关于Xml中outerxml属性的?

君子之交淡如水 2012-05-28 04:26:56
一个任意的Xml文件,获得任意一个节点对象,然后输出这个节点的OuterXml属性,返回值是string类型的,现在用任意一种文本框接收(像richTextBox,textBox等,都可以),但是接收后的样子,很乱,很难看,组长要求我(要格式化输出,加上缩进和换行),但我不会,有哪位高手帮助下,谢谢···
...全文
309 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
孟子E章 2012-05-28
  • 打赏
  • 举报
回复
XmlDocument doc = new XmlDocument();
doc.LoadXml("<WebSites><WebSite><URL>http://xml.luohuedu.net/</URL><Title>【孟宪会之精彩世界】之XML开发者园地</Title><Desc>讨论XML技术和Web技术地专业站点。</Desc></WebSite><WebSite><URL>http://lucky_elove.www1.dotnetplayground.com/</URL><Title>【孟宪会之精彩世界】之.NET开发者园地</Title><Desc>讨论.NET技术和应用的专业站点。</Desc></WebSite></WebSites>");

//比如查找到一个WebSite节点的OuterXml
XmlNode xxx = doc.SelectSingleNode("//WebSite");

XmlDocument doc2 = new XmlDocument();
doc2.LoadXml("<M>" + xxx.OuterXml + "</M>");
StringWriter sw = new StringWriter();
XmlTextWriter xtw = new XmlTextWriter(sw);
xtw.Formatting = Formatting.Indented;
xtw.Indentation = 2;
doc2.WriteTo(xtw);
string xml = sw.ToString().Trim();
textBox1.Text = xml.Substring(3, xml.Length - 7);
孟子E章 2012-05-28
  • 打赏
  • 举报
回复
你可以这样

XmlDocument doc = new XmlDocument();
doc.LoadXml("<WebSites><WebSite><URL>http://xml.luohuedu.net/</URL><Title>【孟宪会之精彩世界】之XML开发者园地</Title><Desc>讨论XML技术和Web技术地专业站点。</Desc></WebSite><WebSite><URL>http://lucky_elove.www1.dotnetplayground.com/</URL><Title>【孟宪会之精彩世界】之.NET开发者园地</Title><Desc>讨论.NET技术和应用的专业站点。</Desc></WebSite></WebSites>");
StringWriter sw = new StringWriter();
XmlTextWriter xtw = new XmlTextWriter(sw);
xtw.Formatting = Formatting.Indented;
doc.WriteTo(xtw);
textBox1.Text = sw.ToString();


如果是随便的node,你可以加上一个临时的根节点即可

111,094

社区成员

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

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

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