【问题标题】:System.Xml.XmlException: Unexpected XML declaration. The XML declaration must be the firstSystem.Xml.XmlException:意外的 XML 声明。 XML 声明必须是第一个
【发布时间】:2013-09-03 23:38:47
【问题描述】:

在编辑并保存后将字符串解析到 XDocument 时出现此错误。但是任何人都可以帮我定位错误位置 - 第 1 行,位置 10475。我怎样才能得到那个位置?

System.Xml.XmlException:意外的 XML 声明。 XML 声明必须是文档中的第一个节点,并且不能有空格 允许字符出现在它之前。第 1 行,位置 10475。

if (storage.FileExists("APPSDATA.xml"))
{
  var reader = new StreamReader(new IsolatedStorageFileStream("APPSDATA.xml", FileMode.Open, storage));

  string xml = reader.ReadToEnd();
  var xdoc = XDocument.Parse(xml);//error here 
  reader.Close(); 

XML 很大,这只是其中的一部分

<?xml version="1.0" encoding="UTF-8"?>
<Ungdungs>
  <Ungdung>
    <Name>HERE City Lens</Name>
    <Id>b0a0ac22-cf9e-45ba-8120-815450e2fd71</Id>
    <Path>/Icon/herecitylens.png</Path>
    <Version>1.0.0.0</Version>
    <Category>HERE</Category>
    <Date>Uknown</Date>
  </Ungdung>
  <Ungdung>
    <Name>HERE Transit</Name>
    <Id>adfdad16-b54a-4ec3-b11e-66bd691be4e6</Id>
    <Path>/Icon/heretransit.png</Path>
    <Version>1.0.0.0</Version>
    <Category>HERE</Category>
    <Date>Uknown</Date>
  </Ungdung>

【问题讨论】:

  • @BuiAkinori 正如XDocument 所说,您的 xml 中有问题。所以没有看到它,我只能说,用编辑器打开你的 xml,转到 xDocument 报告的位置,看看有什么问题。
  • @BuiAkinori how to get to that poisition?真的吗?如果您遇到每一个小问题,您如何计划完成您的代码。
  • &lt;?xml 之前有什么吗?
  • @BuiAkinori 空格呢?你有没有(在&lt;?xml 之前)?
  • @BuiAkinori 检查您是否在文档的其他任何地方重复了&lt;?xml(这是非法的,因此无效)。你说它很长,搜索它,看看你是否在某个地方找到它

标签: c# xml xml-parsing windows-phone-8 linq-to-xml


【解决方案1】:

如果您之前使用布尔值“append = true”保存了 xml 文件,则可能会发生此错误。 如果'false',它应该可以工作。

【讨论】:

    【解决方案2】:

    在我的例子中,这与字节顺序标记有关 - BOM。我在 Notepad++ 中打开了文件,选择了编码“在没有 BOM 的 UTF-8 中编码”,然后能够看到烦人的字符并将其删除。

    【讨论】:

      【解决方案3】:

      确保您的 &lt;?xml 标记是文档中的第一件事(并且在此之前它没有任何内容,这包括空格)。 每个文档只能有一次&lt;?xml,因此,如果您有大量 XML,并且在某处重复了此标记,那么您的文档将无效。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多