iso-8859-1编码的XML文档解析时乱码该怎么解决
一个远程的XML,编码是iso-8859-1,无法更改,所以不要告诉我更改源文件的编码来解决问题。
用IE打开时中文乱码,用记事本就正常,使用XmlDocument和XmlTextReader解析中文都是返回乱码
xml文档:
<?xml version= "1.0 " encoding= "iso-8859-1 " ?>
- <root>
- <doc>
<UNID> CD425D8F21323CE5482572C10005F820 </UNID>
<FLOWLOGID> 1B2ECAD997DCC609482572C10010DE96 </FLOWLOGID>
<DbName> weboa/WEBOA_RECEIVEFILE.NSF </DbName>
<FileFormat> ÊÕÎÄ </FileFormat>
<Sender> CN=×ÞСÈÙ/OU=³§³¤¹¤×÷²¿/OU=³Ø̶ˮÁ¦·¢µç³§/O=CTHD </Sender>
<SendDate> 2007-04-18 11:04:15 </SendDate>
<DocMark> ÊÕÎÄ </DocMark>
<UrgentLevel> ¼± </UrgentLevel>
<Subject> ¹ØÓڲμӼ¯ÍŹ«Ë¾É豸µã¼ì¶¨ÐÞ¹ÜÀíÅàѵ°àµÄ֪ͨ(³Ø̶µç³§ÊÕÎÄ) </Subject>
</doc>
</root>
------解决方案--------------------我也没遇到过,先转化一下编码试试
string xml = ....读取xml到string
System.Text.Encoding encode = System.Text.Encoding.GetEncoding( "iso_8859-1 ");
xml = System.Text.Encoding.UTF8.GetString(encode.GetBytes(xml));
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);