2013-11-07 2 views
0

Я пытаюсь прочитать XML, но его неправильный формат. Структура XML-является правильным, но в одном из значений У меня есть backscape (код 8 в ASCII), например:Ошибка формата XML (код backspace 8 в ascii)

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.') 

Любое решение?

+0

Не хватает информации. Что такое «передать XML»? Вы создаете XML или читаете существующий XML-файл? Покажите код, который вы используете, и укажите ошибку и где это происходит. –

+0

Извините, я создаю xml и после того, как мне нужно его прочитать ... – brunozrk

+0

ПОКАЖИТЕ КОД !!!! –

ответ

1

ASCII 8 не является допустимым символом в XML. Here's the relevant section of the spec.

Если вы хотите, чтобы символ в XML вы должны использовать a character reference - &#8;

+0

Да, isnt действительный символ XML, может быть, я должен заменить на действительный, правильно? – brunozrk

+0

Замените его на '' - это эквивалент. –

0

Будьте осторожны, чтобы использовать & # 8; !!

Я попытался открыть эти xml-файлы с помощью Firefox и Notepad ++. Оба синхронны в заявке & # 8; недействительно, но нет проблемы с открытием/анализом & # 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 
Смежные вопросы