我正在使用vb创建一个应用程序,我想阅读并写一些文件选项。 所有需要的文件都存储在外部(可配置)文件夹中,因此内置设置不是一个选项。 您建议将变量(主要是字符串)保存到可以在任何地方的文件,并且可以在应用程序运行时读取/写入。
提前致谢!
编辑: 让我解释一下: 我想制作一个菜单,用户可以从中更改程序的某些设置。当然,我想在下次用户运行程序时进行保存设置。
我尝试了以下内容:
.NET设置 - 总是保存到一些奇怪的文件夹
Nini(.ini库) - 我需要程序可移植并且可以在没有库的任何PC上工作
我找到一些函数读取txt文件(setting = value)我一到电脑就会收到链接 - 只读
答案 0 :(得分:0)
我认为这可以解决您的情况:
为您的选项创建一个结构(或一个类):
Public Structure MyOptions
Dim option1 As Integer
Dim option2 As Integer
Dim option3 As String
End Structure
然后执行以下操作:
Dim options As New MyOptions
Dim path As String = "settings.cfg"
Dim jsonString As String = JsonConvert.SerializeObject(options, Formatting.Indented)
If File.Exists(path) = False Then
File.WriteAllText(path, jsonString) 'if dile doesn't exist save initial jsonString
Else
jsonString = File.ReadAllText(path) 'read options from file
End If
'load structure with values from file
options = JsonConvert.DeserializeObject(Of MyOptions)(jsonString)
然后您可以像这样使用它:
Dim x as integer = options.option1
Dim s as string = options.option3
您的初始settings.cfg文件将如下所示:
{
"option1": 0,
"option2": 0,
"option3": null
}
更改选项值后:
options.option1 = 5
options.option3 = "test"
您可以将其保存为以下文件:
jsonString = JsonConvert.SerializeObject(options, Formatting.Indented)
File.WriteAllText(path, jsonString)
新文件将如下所示:
{
"option1": 5,
"option2": 0,
"option3": "test"
}
答案 1 :(得分:-1)
您可以通过将选项添加到程序设置来保存选项: 1 - 打开项目后,转到“项目”菜单 2点击最后一个:.......设置 3 - 您可以添加新项目ex:type:String如果要保存它在文本框中的选项。