编码如下的Xml文件:
<?xml version="1.0" encoding="iso-8859-1"?>
包含一些日语字符,如下所述:
<Name>
<![CDATA[熊本大学Slave_1002 大 [EL2002]]]>
</Name>
读取相同文件时,日语字符损坏,并且名称为
<Name><![CDATA[????Slave_1002 ? [EL2002]]]></Name>
下面是用于读取文件的代码。
using (StreamReader streamReader = new
StreamReader(filePath,System.Text.Encoding.GetEncoding("iso8859-1")))
{
XDocument xdoc = XDocument.Load(streamReader);
}
也尝试过编码UTF-8和unicode。
我迅速检查了规格,据我所知,CDATA部分应与文档的其余部分具有相同的编码,但是有一些known issues。由于您已经尝试过utf-8,因此在文档序言<?xml version="1.0" encoding="like here" ?>
中是否指定了其他编码?您可以在文本编辑器中看到这些字符是很奇怪的。