去掉Xml声明段

问题:

string strXml = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?> <note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don't forget the meeting!</body> </note>"; 
要去掉它的声明:"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>

 

方法一:找字符串?>  看法:比较二

方法二:XmlDocument找第一个声明元素并干掉 看法:比较正常

方法三:XDocument直接输出ToString() 看法:最简洁、最正确,但不自然

关于XDocument输出时的声明情况:

  • 调用Save(FileName)的时候总会写入一个声明 
  • 调用Save(XmlWriter)将会写入一个声明, 除非XmlWriter已经被指示不使用 
  • ToString方法永远不会处理XML声明 

最终代码是:XDocument.Parse(fullXml.ToString())

 

总结:代码要写得细:D

posted on 2011-11-22 16:03  理想Ideal  阅读(1018)  评论(0编辑  收藏  举报

导航