0
我要读包含特殊字符,像一个XML。如何在使用xmldocument读取xml时使用Encoding,因为不使用读取器。如何读取C#中的特殊字符的XML?
XDocument xml = XDocument.Load(file.FullName);
var q = from p in xml.Descendants("xyz")
select new abc()
我要读包含特殊字符,像一个XML。如何在使用xmldocument读取xml时使用Encoding,因为不使用读取器。如何读取C#中的特殊字符的XML?
XDocument xml = XDocument.Load(file.FullName);
var q = from p in xml.Descendants("xyz")
select new abc()
可能是XDocument.Load
没有使用正确的编码。从你的例子(Ã
)似乎该文件是UTF8。你可以尝试强制编码:
using (var sr = new StreamReader(file.FullName, Encoding.UTF8))
{
var xml = XDocument.Load(sr);
var q = ...
}
如果它是'?',那么文件可能是UTF8。奇怪它不是自动识别的。 – xanatos
在StreamReader的,我们可以使用Encoding.UTF8.How使用LINQ – VShetty
尝试使用'(VAR SR =新的StreamReader(file.FullName,Encoding.UTF8)){风险XML = XDocument.Load(SR)读取XML时使用;变种Q = ...}' – xanatos