我需要添加一个新项目。这个新项目将作为孩子添加。但它似乎只将一个子项中的所有数据输入组合在一起。下面是我的代码。
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("C:\\Users\\HDAdmin\\Documents\\SliceEngine\\SliceEngine\\bin\\Debug\\saya.xml");
XmlElement contentElement = xmlDoc.CreateElement("Name");
XmlElement itemEl = xmlDoc.CreateElement("item");
XmlText xmlText = xmlDoc.CreateTextNode(textBox1.Text.Trim());
itemEl.AppendChild(xmlText);
contentElement.AppendChild(itemEl);
xmlDoc.DocumentElement.AppendChild(contentElement);
XmlElement thumbEl = xmlDoc.CreateElement("thumb");
XmlText xmlThumb = xmlDoc.CreateTextNode(textBox2.Text.Trim());
itemEl.AppendChild(xmlThumb);
contentElement.AppendChild(thumbEl);
xmlDoc.DocumentElement.AppendChild(contentElement);
xmlDoc.Save("C:\\Users\\HDAdmin\\Documents\\SliceEngine\\SliceEngine\\bin\\Debug\\saya.xml");
输出
<Name>
<item>werasd</item>
<thumb/> </Name>
但输出应该出现
<Name>
<item>wer</item>
<thumb>asd<thumb/>
我该怎么办?
答案 0 :(得分:3)
使用XmlElement.InnerText
。它获取或设置节点的连接值。所以你的代码应该是这样的:
XmlText xmlThumb = xmlDoc.CreateTextNode(textBox2.Text.Trim());
itemEl.AppendChild(xmlThumb);
// new code
thumbEl.InnerText = textBox2.Text.Trim();
答案 1 :(得分:1)
你将它附加到错误的项目更改
itemEl.AppendChild(xmlThumb);
到这个
thumbEl.AppendChild(xmlThumb);