我正在用 C# 编写一个程序,我计划在未来为其他平台(即 Mac OSX)用不同的编程语言重写。应用程序需要保存一些用户定义的设置。我的问题是,我应该以任何编程语言都可以读取的格式保存设置文件,还是应该使用app.config
内置的 .NET?
还有各有什么好处?
我正在用 C# 编写一个程序,我计划在未来为其他平台(即 Mac OSX)用不同的编程语言重写。应用程序需要保存一些用户定义的设置。我的问题是,我应该以任何编程语言都可以读取的格式保存设置文件,还是应该使用app.config
内置的 .NET?
还有各有什么好处?
好吧,这取决于您计划如何在不同平台上实现它。例如,如果您使用 Monoapp.config
就可以了。但除此之外,我会考虑使用更中性的文件格式。XML 是显而易见的选择——尤其是在不需要手动编辑的情况下。或者您可以使用 JSON,或简单key = value
的每行一个条目的格式。
当然app.config
是XML,但它是一种特定于 .NET 的 XML 格式。如果您通常创建自己的设置文件,则使用的格式app.config
不是您通常会想到的格式。我相信您可以轻松地从其他平台读取app.config
文件,但这不是最自然的方式。
格式的选择部分取决于设置是什么 - 单个非结构化列表是否足够好,或者您是否会受益于 XML 给出的树层次结构?