2015-01-23 10 views
0

Использование Delphi XE2 TXMLDocument и MSXML£ символов в XML

<description>£1.00 x 100</description> parsing error as does 
<description><![CDATA[£1.00 x 100]]></description> parsing error as does 

£ символ не отмечен как недействительный характер.

Это проблема? Что еще более важно, какое обходное решение предлагается.

ТИА

Ефрем

+1

Какая кодировка вы используете для этого текста? XML выглядит верным для меня, поэтому я могу только предположить, что вы не используете правильную текстовую кодировку. –

+0

Ephraim

+0

Извините, но здесь есть что-то еще. Я просто тестировал с помощью < £ 1.00 x 100 'и он разбирает абсолютно точно. –

ответ

1
&#x00A3; 

обходной путь

<description>&#x00A3;1.00 x 100</description> 
+5

Это может стать побочным шагом проблемы, но почти наверняка вы просто подавляете гораздо более глубокую проблему. Вместо того, чтобы двигаться вперед с этим обходным путем, вы должны найти и решить настоящую проблему. –

6

Вероятное объяснение этого заключается в том, что вы указали UTF-8 в вашей ?xml декларации, но на самом деле зашифровал файл используя ANSI. Очевидно, что решение - правильно кодировать файл как UTF-8.

+0

Использование notepad ++ Я сохранил файл с кодировкой utf-9 и больше не нуждаюсь в обходном пути. – Ephraim