XML解析異常:根級別上的數據無效。 第 1 行 位置 1。


異常信息:
 
使用XDocument.Parse解析XML時報異常: 根級別上的數據無效。 第 1 行 位置 1。
 
 
異常環境:
1、客戶端使用的是Framework2.0的XmlDocument生成Xml文件並傳給服務端
2、服務端使用的是Framework4.0的XDocument.Parse解析上傳的Xml文件內容,解析內容時拋出上傳異常
 
 
分析原因:
1、google、百度后基本確定是文件編碼的問題,XmlDocument.Save()生成的文件有時可以解析有時又不行
2、 可以解析的xml文件編碼屬性為:(NotePad++查看)
3、 不能解析的xml文件編碼屬性為:
4、只要讓XmlDocument.Save()生成的文件格式符合可以解析標准即可
 
 
解決方法:
使用XmlDocument .Save()直接保存XML有編碼問題,使用下述方法即可
 
//設置xml生成樣式
XmlWriterSettings xmlSetting = new XmlWriterSettings();
xmlSetting.Encoding = new UTF8Encoding( false);
xmlSetting.Indent = true;

//保存xml文件
XmlWriter writer = XmlWriter.Create(filePath, xmlSetting);
xmldoc.Save(writer);
writer.Close();

注:
filePath:保存的文件路徑
xmldoc:XmlDocment對象






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM