在VB.NET项目中,我有一个xml文档作为嵌入式资源。我正在使用
访问它Private xmlFile as New XmlDocument()
在“总宣言”区域内。然后我在表单加载方法中加载它:
xmlFile.LoadXml(My.Resources.Settings)
在一个方法中,我找到了特定节点并从用户输入中更新它们:
'Dim xmlDoc as XmlDocument
'xmlDoc = xmlFile
Dim settingNodes As XmlNodeList = xmlFile.SelectNodes("//Program/ProgramTitle")
For Each setting As XmlNode In settingNodes
If setting.InnerText = title Then
setting.ParentNode.Item("ProgramSaveFolder").InnerText = programFolder
setting.ParentNode.Item("PrimaryBackupFolder").InnerText = primBackup
setting.ParentNode.Item("SecondaryBackupFolder").InnerText = secBackup
End If
Next
' Neither of these work
xmlFile.Save("Settings.txt")
'xmlDoc.Save("GameSettings.txt")
xmlDoc代码来自于我被引导相信它没有保存,因为xmlFile正在使用中(我一直在尝试很多不同的东西!)。
但是,如代码中所述,这些都不起作用。这与我所看到的有关如何执行此操作的示例非常相似,但是当我运行程序时,它根本不会更改文件。
答案 0 :(得分:0)
您无法修改嵌入资源。您可以将XML文件包含为内容,它将作为普通文件显示在构建文件夹中,可以使用File.IO命名空间或XMLDocument.Load()加载和更新。
要注意的一个问题是,要修改的Program Files文件夹中的文件将需要用户可能没有的管理员权限。如果是这种情况,最好将文件复制到AppData文件夹。