XML文件读取错误

时间:2009-11-30 12:05:13

标签: xml-serialization

请帮助我,我有以下问题:

我正在尝试读取如下所示的XML文件:

<service  />
<parameters>
  <parametro nombreParametro="payment" valorParametro="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;" tipoParametro="string" />
</parameters>

xml文件格式正确,但正如您所看到的,我有一些&lt; <&gt; >个字符作为某些元素的属性,问题是当我试图读取这样的文件时:

xmlDoc.LoadXml(stringWithXmlFileContent);

它给了我以下错误:

Additional information: '<', hexadecimal value 0x3C, is not a valid character or attribute. Line XX, position XX.

我该怎么做才能避免这个错误,我不想做一个替换原因我正在建立一个通用的方法。

提前致谢。

2 个答案:

答案 0 :(得分:1)

我无法重现这一点,假设您发布的内容只是XML文件的一部分。 (如果它是整个文件,那么问题是它没有单个根元素,正如Rubens在他的回答中所说的那样)。这是一个简短但完整的程序,显示相同的属性值没有问题:

using System;
using System.Xml;

public class Test
{
    public static void Main(String[] args)
    {
        string xml = "<element attr=\"&lt;?xml version=&quot;1.0&quot;"
            + " encoding=&quot;utf-16&quot;?&gt;\" />";

        XmlDocument doc = new XmlDocument();
        doc.LoadXml(xml);
        Console.WriteLine(doc.OuterXml);
    }
}

您可以编辑您的问题,以包含 显示问题的类似程序吗?

答案 1 :(得分:0)

似乎你的XML文件格式不正确,因为你必须有一个根元素。

您能否告诉我们您如何构建此文件?