Ric*_*ber 2 xml string unicode character
我有一些xml,其中一些元素值是unicode字符.是否可以用ANSI编码表示?
例如
<?xml version="1.0" encoding="utf-8"?>
<xml>
<value>?</value>
</xml>
Run Code Online (Sandbox Code Playgroud)
至
<?xml version="1.0" encoding="Windows-1252"?>
<xml>
<value>殘</value>
</xml>
Run Code Online (Sandbox Code Playgroud)
我反序列化XML,然后尝试使用指定默认编码的XmlTextWriter序列化它(默认为Windows-1252).所有unicode字符最终都是问号.我正在使用VS 2008,C#3.5
好吧,我用以下代码测试了它:
string xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><xml><value>?</value></xml>";
XmlWriterSettings settings = new XmlWriterSettings { Encoding = Encoding.Default };
MemoryStream ms = new MemoryStream();
using (XmlWriter writer = XmlTextWriter.Create(ms, settings))
XElement.Parse(xml).WriteTo(writer);
string value = Encoding.Default.GetString(ms.ToArray());
Run Code Online (Sandbox Code Playgroud)
它正确地逃脱了unicode角色:
<?xml version="1.0" encoding="Windows-1252"?><xml><value>受</value></xml>
Run Code Online (Sandbox Code Playgroud)
我必须在其他地方做错事.谢谢您的帮助.
归档时间: |
|
查看次数: |
4867 次 |
最近记录: |