2009-07-25 56 views
1

我正在使用XmlTextWriter爲我的程序保存某些配置元素(它只有10-15個字符串值,這就是爲什麼我使用XmlTextWriter)。我的代碼如下:XmlTextWriter:允許Unicode?

XmlTextWriter writer = new XmlTextWriter("FILENAME.XML", null); 

writer.WriteStartElement("Config"); 
writer.WriteElementString("Param1", param1); 
writer.WriteElementString("Param2", param2); 
... 
writer.WriteEndElement(); 

writer.Close(); 

我想允許paramX值包含unicode。沒有什麼太花哨 - 這些值來自用戶輸入數據的文本框,我希望系統能夠在全球範圍內正常工作(中文,日文,希伯來文,阿拉伯文等)。我不解析數據,我只是想在下次程序加載時將其呈現出來。

達到此目的的方法是什麼?

+0

僅供參考,你不應該使用'新的XmlTextReader()`或`新的XmlTextWriter()`。自.NET 2.0以來,它們已被棄用。改爲使用`XmlReader.Create()`或`XmlWriter.Create()`。 – 2014-03-11 23:02:14

回答

2

構造的第二個參數是encoding。如果爲空,則默認編碼爲UTF8。

+0

你的意思是說我的程序目前允許所有語言? – 2009-07-25 05:33:49

+0

是的! http://en.wikipedia.org/wiki/UTF-8#Advantages_3 – MyItchyChin 2009-07-25 05:52:50

1

嘛,有兩個方面的位置:保存數據並顯示它。 XML當然可以處理Unicode,並且XmlTextWriter也可以這樣做。

你在使用到,雖然顯示的數據?如果這是一個Windows窗體應用程序,則可能需要明確地將字體設置爲可處理所需的所有Unicode的字體。絕對值得使用你感興趣的所有字符集(希伯來語等)進行測試。