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