• 根级别上的数据无效。 行 1,位置 1


    public void Parse(string xml)
    {
    this.Items=new RssItemCollection();
    XmlDocument xDoc=new XmlDocument();
    try
    {
    //xDoc.LoadXml(xml);
    xDoc.LoadXml(xml.Trim());
    }
    catch(Exception e)
    {
    throw new Exception("内容不符合标准",e);
    }
    }
    View Code

    加载XML时始终 根级别上的数据无效。 行1,位置1

    在网上找了很久都没有结果 最后只有自己试试,Load前加了 xml=xml.Trim(); 通过了,但是xml前后都没有空格之类的符号 奇怪的错误,而且加载的xml 在IE下是不报错的。

    不敢独享 望给同样经历的人一点参考

    以上来自:http://hi.baidu.com/xsharkx/item/d2da2935cb6995f6a88428cc

    个人解决办法:

    之前使用的一个Xml文件只更改了几个字符再加载时就出现“根级别上的数据无效。 行 1,位置 1”的问题,虽然找到了以上的解决办法并解决了问题

    但并不清楚是为什么?

    看起来完全相同的字符串就一定相同吗??

    复制下面的代码到chrome中Console中运行一下看看

    1 var s='<?xml version="1.0" encoding="UTF-8"?>';
    2 var s='<?xml version="1.0" encoding="UTF-8"?>';
    3 
    4 alert('s.length='+s.length+'
    _s.length='+_s.length);
    View Code
    运行结果:
     
    通过在Vs中调试发现不加Trim的字符中多了一个"."从而导致xml出错
    解决办法:
    1.在代码中加入Trim()清除多余的字符(推荐
     
    xDoc.LoadXml(xml.Trim());
     
    2.自动清除多余的字符"."并在Xml文件中替换(此方法并不能完全避免此问题应该使用方法1) http://hi.baidu.com/xsharkx/item/d2da2935cb6995f6a88428cc http://www.cnblogs.com/XChWaad/p/3346875.html
  • 相关阅读:
    ==和equals
    java 多重继承
    java单例模式
    基础小知识
    print流之错误日志
    print流
    实现读文本文件(IOl流)
    缓冲流(数据的复制粘贴)IO流
    力扣20题、1047(括号合法性,删除字符串中的所有相邻重复项)
    力扣232题、225题(栈实现队列,队列实现栈)
  • 原文地址:https://www.cnblogs.com/huangtailang/p/3850522.html
Copyright © 2020-2023  润新知