XML格式错误(ascii中的退格代码8)

时间:2013-11-07 17:32:44

标签: python xml

我正在尝试读取XML但其返回的格式错误。 XML结构是正确的,但在其中一个值中我有一个backscape(ascii中的代码8)示例:

xml = '<?xml version="1.0" encoding="UTF-8"?><test versao="1.0"><is_apply>0</is_apply><result>some value in xml (heres goes the backspace value) will be wrong</result></test>'

try:
    doc = parseString(xml)
except Exception, e:
    raise XMLErrorUtils(e, u'Falha ao realizar o parse do xml.')

任何解决方案?

2 个答案:

答案 0 :(得分:1)

ASCII 8不是XML中的有效字符。 Here's the relevant section of the spec

如果您想要XML格式的字符,则应使用a character reference - &#8;

答案 1 :(得分:0)

小心使用&amp;#8; !!

我试图用Firefox和Notepad ++打开这些xml文件。声称&amp;#8;两者都是同步的。无效,但打开/解析&amp;#9;

都没有问题
<?xml version="1.0" encoding="UTF-8"?>
<contact>&#8;</contact>

<?xml version="1.0" encoding="UTF-8"?>
<contact>&#9;</contact>

输出:

XML Parsing Error: reference to invalid character number
Location: file:///charcode8.xml Line Number 2, Column 10