我節省了使用控制字符出現在XDocument.Save()中,但僅對Unix可見?
xDoc.Save(result.Filename, SaveOptions.OmitDuplicateNamespaces);
當我們正確打開Windows系統(Server2008中或Win7的)的XML是正確的,過程中的下一個系統上的文件並進行處理簡單的XDocument。
Howevever,當我們移動到我們的生產系統(unix)時,xml無法正確讀取。
當我們vi
在unix框上產生的文件有三個主要的控制字符。正確刪除這些和xml進程。
我在Notepad ++(顯示文件顯示爲ANSI/UTF8)中看不到這些字符。
有沒有人知道這些角色是什麼,他們是如何到達那裏的......以及如何刪除它們或阻止它們出現?
此假設讀者可以處理UTF8,但不是BOM。 –
沒問題。這個答案是「正確刪除這些和xml進程」。從我有限的經驗來看,這將工作得很好。 –
@HenkHolterman這正是問題所在 - UTF8中的BOM混淆了最終系統http://en.wikipedia.org/wiki/Byte_order_mark – BlueChippy