在XML文档中包含带查询字符串的URL

时间:2011-11-21 16:49:11

标签: xml encoding

所以我有这个XML文档:

<?xml version="1.0" encoding="UTF-8"?>
<Root>
    <Item>
        <URL>http://www.mysite.com/page?id=1</URL>
    </Item>
</Root>

当我尝试查看文档时,收到错误消息:

  

XML解析错误:格式不正确

在查询字符串中的=符号处。我尝试将=符号更改为%3D,但我在%

时收到同样的错误

我应该在这做什么?

3 个答案:

答案 0 :(得分:16)

正如您所提供的那样,XML格式正确。 你没有任何东西可以逃脱。也许您的源文件中存在编码问题。 有关信息,您必须在XML中转义的2个字符是:

& in &amp;
< in &lt;

您可以在属性值中转义的字符(取决于您用于属性的语法:attr='value'attr="value"):

" in &quot;
' in &apos;

根据上下文,可以转义的最后一个字符:

> in &gt;

答案 1 :(得分:15)

您可以尝试<URL><![CDATA[http://www.example.com/page?id=1]]></URL>

解析器将解析XML文档中的所有文本。 但解析器将忽略CDATA部分内的文本。您可以找到更多here

答案 2 :(得分:2)

试试这个<URL><![CDATA[http://www.mysite.com/page?id=1]]></URL>