2010-02-01 41 views
3

我正在使用XDocument生成一个xml文件。当我保存这个文件时,它增加了在保存时排除xml声明

<?xml version="1.0" encoding="utf-8"?> 

在XML的顶部..

我想节省

我怎么能做到这一点之前排除此。

+0

你为什么要?删除它不应该影响任何XML工具? – Mark 2010-02-01 14:27:42

+0

实际上,我正在使用SCSF framewokr作为我的应用程序。它有ProfileCatalog.xml文件,我在运行时添加和删除插件。修改后,当我保存这个文件时,它在顶部添加了xml声明。 所以当SCSF加载这个XML文件时,由于格式不正确,它给了我例外。手动删除这条第一行后,它正确加载.. – Mohsan 2010-02-01 14:32:49

回答

4

使用保存方法到XmlWriter的http://msdn.microsoft.com/en-us/library/bb336977.aspx,并创建这个XmlWiter与XmlWriterSettings http://msdn.microsoft.com/en-us/library/system.xml.xmlwriter.settings.aspx

XmlWriterSettings settings = new XmlWriterSettings(); 
settings.OmitXmlDeclaration = true; 


XmlWriter writer = XmlWriter.Create(yourstream, settings); 

yourXDocument.Save(writer); 
+0

我已经看到了一些奇怪的行为,关于以前看到一个具有相同名称的程序集的机器上运行此操作。重新启动修复它,但不清楚是什么导致了问题。 – Erick 2011-07-12 15:45:45