您需要解决的第一个问题是谁和为什么。您对如何选择的选择将来自这些。
那么谁(或什么)将访问数据?如果只是程序本身,那么您可以随心所欲地存储数据——二进制文件、xml、数据库、ini 文件等等。但是,如果用户需要轻松访问数据以便他们可以在运行之前对其进行更改,那么可以轻松编辑的文本文件(如 ini)是有意义的。为了编辑以其他格式存储的数据,您可能必须编写一个完全独立的程序来操作存储的参数。也许这对您的情况有意义,也可能没有,但它会做更多的工作。
如果您选择走 ini 路线,那么您就在正确的轨道上。它们只是文本文件。一种常见的格式是有部分(通常在括号中),然后是部分内的键/值对。通常注释行以分号开头,这对于可能想要在设置之间来回切换的用户来说是一个不错的选择。
所以是这样的:
[System]
datapath = /home/me/data
[Application]
start_count = 12
; start_count = 20 //this is a comment
您不必担心数据的特定行。您只需逐行阅读文件。空行或注释行被扔掉。您记下您所在的部分并处理键/值对。
有很多方法可以将解析后的文件存储在程序中。一个简单的方法可能是将部分名称和键连接成地图的键。(键/值对的)值将是地图的数据。
所以“Systemdatapath”可能是一个映射键,它的值是“/home/me/data”。当您的程序需要使用这些值时,它只是通过键查找它。
这就是基础。最终你会想要修饰它。例如,按类型检索值的方法。例如 getString()、getInteger()、getFloat() 等。