首页 > 开发 > XML > 正文

XML文件修改节点属性值(多种方法)

2024-09-05 20:55:08
字体:
来源:转载
供稿:网友
xml 文件内容:
代码如下:
<?xml version="1.0" encoding="utf-8"?>
<subtitles>
<info>
<content>最新通告:五一放假七天!请各教员悉知</content>
<speed>4</speed>
<color>red</color>
</info>
</subtitles>

C#代码:
代码如下:
XmlDocument xml = new XmlDocument();
xml.Load(context.Server.MapPath("~/js/XMLFile.xml"));
XmlNode xn = xml.DocumentElement;
foreach (XmlNode node in xn.ChildNodes)
{
if (node.Name == "info")
{
node["content"].InnerText = content;
node["speed"].InnerText = speed;
node["color"].InnerText = color;
}
}
xml.Save(context.Server.MapPath("~/js/XMLFile.xml"));

另外两种办法:
修改xml字符串的某个节点的属性值,如下:
代码如下:
XmlDocument doc = new XmlDocument();
doc.LoadXml("<fsdlconfig userName=/"ss/" password=/"134/"/>");
XmlAttribute att =(XmlAttribute)doc.SelectSingleNode("/fsdlconfig/@userName");
Console.WriteLine(att.Value);
att.Value = "test";
string str = doc.OuterXml;

节点userName的值由原来的"ss",变成了"test",然后用doc.OuterXml保存修改后的xml为字符串。
另一种方式:
代码如下:
XmlDocument doc = new XmlDocument();
doc.LoadXml("<fsdlconfig userName=/"ss/" password=/"134/"/>");
XmlElement att = (XmlElement)doc.FirstChild;
att.SetAttribute("userName","test");
string str = doc.OuterXml;
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表