我正在尝试创建一个更新XML文件中内容的工具。 我最大的问题是如何让程序知道在哪里更新内容。
以下是XML文件前五行的示例。
<?xml version="1.0" encoding="UTF-8"?>
<monster name="Demon" nameDescription="a demon" race="fire" experience="6000" speed="280" manacost="0">
<health now="8200" max="8200"/>
<look type="35" corpse="5995"/>
<targetchange interval="5000" chance="10"/>
假设我想修改经验值,我该怎么做? 我已经查看了这个网站上已经存在的说明,但没有涉及到类似的内容。
我使用的是C#Windows Form。
答案 0 :(得分:4)
使用Linq to Xml,您可以:
XDocument xdoc = XDocument.Load(path_to_xml); // load xml file
// query for data you want to update
var experience = xdoc.Root.Attribute("experience");
experience.SetValue(42); // update data
xdoc.Save(path_to_xml); // save updated data
答案 1 :(得分:0)
有很多方法可以做到这一点:
在.Net中使用XMLDocument和其他内置类。您可以打开文件并将XML加载到类中,然后使用XPath来获取属性。这与@ lazyberezovsky的答案类似。
hack-y解决方案是对文件文本进行字符串解析。查找experience="
,并注意从那里开始,下一个"
是您要更改的值。这不是我的第一个建议,但有时我想要最快的黑客来更改XML文件。