问个xml内插入节点的问题,插入xml字符串

阳光柚子 2007-10-19 08:59:23
有xml如下形式
<Request>
<State code="1">
<a>xxx</a>
<b>ccc</b>
</State>
</Request>
现有一字符串格式如<State code="2"><a>111</a><b>222</b></State>
如何用xml操作的方法把这个字符串作为子节点加到xml中去?
...全文
380 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xray2005 2007-10-19
  • 打赏
  • 举报
回复
如果你不是插入到根元素的,那么只需要更改将这个XmlDocumentFragment 使用appendchild你指定的元素就可以了
xray2005 2007-10-19
  • 打赏
  • 举报
回复
如果你是插入到根元素的,那么只需要更改将这个XmlDocumentFragment 使用appendchild你指定的元素就可以了
xray2005 2007-10-19
  • 打赏
  • 举报
回复
可以使用XmlDocumentFragment 来插入片段



string filepath = Server.MapPath("你的xml文件");
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(filepath);
XmlDocumentFragment xmlfrag = xmldoc.CreateDocumentFragment();
xmlfrag.InnerXml ="<State code="2" ><a >111</a ><b >222</b ></State >"
xmldoc.DocumentElement.AppendChild(xmlfrag); //从根元素开始插入
xmldoc.Save(filepath);
阳光柚子 2007-10-19
  • 打赏
  • 举报
回复
啊,那就是说xml没有这种将一个字符串作为一个node加入的方法了么
如果解析字符串的话,挺麻烦的,特别是层次很多的XML......

一种方式是把新的字符串包上一个原XML里父级节点的头,然后再生成一个node,然后加入原xml
这要比把原xml转化字符串方便点
child399 2007-10-19
  • 打赏
  • 举报
回复
先将原来的XML转化为字符串,然后再将你的字符串加入到字符串里面去,然后再将字符串转化为XML
阳光柚子 2007-10-19
  • 打赏
  • 举报
回复
这样是一个节点一个节点生成,然后再加值进去啊
我是想一次性把这个字符串做为一个大节点加入,而不用去解析这个字符串,而且这个字符串是保证符合原XML节点规范的
wcm19850530 2007-10-19
  • 打赏
  • 举报
回复
protected void Button3_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("XMLFile.xml"));//加载xml文件

XmlNode node = doc.SelectSingleNode("Request ");
XmlElement StateElement = doc.CreateElement("State");
StateElement.SetAttribute("code", "2");

XmlElement aElement = doc.CreateElement("a");
aElement.InnerText = "111";
StateElement.AppendChild(aElement);

XmlElement bElement = doc.CreateElement("b");
bElement.InnerText = "222";
StateElement.AppendChild(bElement);

node.AppendChild(StateElement);
doc.Save(Server.MapPath("XMLFile.xml"));
}
阳光柚子 2007-10-19
  • 打赏
  • 举报
回复
感谢xray2005

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧