我想讀取一些xml文件。如何從XML文件中刪除隱形垃圾字符
,當我打開這些文件,用記事本/寫字板/ MS Word或任何瀏覽器,它是在原來的form.But打開,當我試圖用MS DOS,一股無形的chacter像「∩╗┐執行它「被看到。 我覺得「∩╗┐」是建立一個error.i正在尋找錯誤「的內容是不是在序言中不允許的。」
請告訴我,我怎樣才能從XML文件中使用C#代碼刪除此不可見的垃圾字符。
在此先感謝。
我想讀取一些xml文件。如何從XML文件中刪除隱形垃圾字符
,當我打開這些文件,用記事本/寫字板/ MS Word或任何瀏覽器,它是在原來的form.But打開,當我試圖用MS DOS,一股無形的chacter像「∩╗┐執行它「被看到。 我覺得「∩╗┐」是建立一個error.i正在尋找錯誤「的內容是不是在序言中不允許的。」
請告訴我,我怎樣才能從XML文件中使用C#代碼刪除此不可見的垃圾字符。
在此先感謝。
那可能是UTF-8 byte-order mark。許多文本編輯器(例如Notepad ++和jEdit)允許您指定是否爲UTF-8編寫BOM。使用Windows記事本,您唯一的選擇是將該文件保存爲ANSI。
謝謝先生。它幫助我解決了這個問題。 – 2012-08-13 10:34:46
確實聽起來像是字節順序標記。你的問題還不清楚,但如果確實必須編寫從C#這些文件沒有一個字節順序標記,你可以通過false
到UTF8Encoding
構造指定此:
XmlDocument xmlDoc = your_xml_document;
using (TextWriter writer = new StreamWriter(output_filename, new UTF8Encoding(false))
{
xmlDoc.Save(writer);
}
它是一個字節順序標記? – CodeCaster 2012-08-13 08:35:23
執行XML?在MS-DOS中?你的意思是你在控制檯窗口中打印它嗎? – 2012-08-13 08:38:30
我不知道它是什麼?它在所有瀏覽器和幾乎所有編輯器中都是不可見的,但在MS Dos窗口中可以看到它。當我鍵入 C:> type test.xml – 2012-08-13 08:39:23