2010-02-01 44 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