XML错误: 根级别上的数据无效 行1 位置1

一个好好的xml,改动了一点内容,就出了这样的问题。

格式没有错,却除了这样的问题,莫名其妙!

百度之!

一.trim()方法

错误原因:“不加Trim的字符中多了一个"."从而导致xml出错”?。根据这里的方法:

http://www.cnblogs.com/huangtailang/p/3850522.html

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);
  }
}

但是依旧打不开文件,错误依旧。

二、改用doc.Load()方法

根据xuehuic这里的方法

XmlDocument doc = new XmlDocument();
 doc.LoadXML("Config.XML");

把loadXML函数改成load()函数就可以解决了。两个的用法有区别:

LoadXml (): 该方法从字符串中读取   XML。

如  LoadXml("<book><title>C#</title></book>");

Load ():  方法将文档置入内存中并包含可用于从每个不同的格式中获取数据的重载方法。

如 Load(文件)

连接:http://blog.csdn.net/xuehuic/article/details/6020202

测试结果:成功,解决问题。

三、疑惑?

之前一直使用的xDoc.LoadXml(文件地址)方法,为何能正常使用呢?

似乎不是说不能加载xml文件的,只是改动内容后无法加载了。

时间: 2024-07-28 20:47:06

XML错误: 根级别上的数据无效 行1 位置1的相关文章

xml提示“根级别上的数据无效”

xml提示“根级别上的数据无效” 1.读取xml文档的时候提示,后百度结果:使用Load()方法是读取文档,xmlLoad()是读取字符串. 2. <?xml version="1.0" encoding="gb2312"?> 当xml文档编码(encoding="gb2312")是gb2312时,xml文档应该是ANSI,不然会乱码. 3.正确的实例: string ff = "/File/XML/xml.xml"

无法显示xml,根级别上的数据无效,第1行,位置1

出现这样的提示一般是xml出了问题,网上有很多修改的方法,而我这里的xml是通过webservice返回来的,出现这样的提示肯定是服务出了问题,一种原因是更改了web服务后返回的xml被编码,在C#中使用UrlDecode可进行反编码解决此问题,需要添加system.web引用,然后 temp=HttpUtility.UrlDecode(temp,Encoding.UTF8); temp是返回的xml我这里是string格式,UTF8即是编码.解决!

C# XML 根级别上的数据无效,XMLDriver,Xpath

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using System.Xml; namespace 六月版.客户.网站.Models { public static class XMLDriver { public static List<string> GetObjects(string nodeName, string filepa

根级别上的数据无效。 行 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); } } 加载XML时始终 根级别上的数据无效. 行1,位置1

WebService &ndash; 3.后台调用WebService,根级别上的数据无效

1.因为我的webservice返回的是json, 2.ajax传递跨域不安全, 3.contentType: "application/json; charset=utf-8", 这个是直接访问的webservice   所以还是采用后台调用, 如果引用微软的webService直接new对象,调用方法,就会报错根级别上的数据无效 困扰了我1天,最后的解决方法, 创建辅助类, public class WebServiceHelper { /// <summary> //

C# LoadXml 报错:xml 根级别上的数据无效

坑啊,搜了下园子里,一样的XD不少,方法试了几个对我的代码也无效,折腾了一晚上才搞定. 去掉BOM头 writer = new XmlTextWriter(stream, new UnicodeEncoding(false,false)); 如果是UTF8 writer = new XmlTextWriter(stream, new UTF8Encoding(false));

vs上出现&quot;未能加载项目文件,根级别上的数据无效.Microsoft.WinFx.targets&quot;的解决方法

问题: 本人尝试百度.谷歌和发帖,均未能找到解决办法.最好误打误撞解决了: 1.删除C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFx.targets文件 2.将C:\Program Files (x86)\MSBuild\12.0\Bin\Microsoft.WinFx.targets文件复制到C:\Windows\Microsoft.NET\Framework\v4.0.30319中 此时会出现这样的错误: 直接把这个.

遭遇“HTTP 错误 500.19 无法访问请求的页面,因为该页的相关配置数据无效。”

windows 2008下IIS7 安装ASP.NET 遇到如下错误:  <!--[endif]--> HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 详细错误信息模块 IIS Web Core 通知 BeginRequest 处理程序 尚未确定 错误代码 0x80070021 配置错误不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁定是默认设置的(overrideModeDefault=

[ArchLinux]进行更新时出现错误:GPGME error: 无数据,数据库无效的解决办法/

今天在我进行系统更新pacman -Syu时,出现了如下错误: # pacman -Syu 错误:GPGME error: 无数据 错误:GPGME error: 无数据 错误:GPGME error: 无数据 错误:GPGME error: 无数据 错误:GPGME error: 无数据 :: 正在同步软件包数据库... core 已经是最新版本 0.0 B 0.00B/s 00:00 [----------------------] 0% extra 已经是最新版本 0.0 B 0.00B/