Средство синтаксического анализа XML: в текстовом содержимом найден недопустимый символ
Эта статья поможет устранить ошибки при синтаксическом анализе языка XML, содержащего специальные символы, с помощью средства синтаксического анализа XML (MSXML) Майкрософт.
Исходная версия продукта: платформа .NET Framework
Исходный номер базы знаний: 238833
Признак
При синтаксическом анализе XML, содержащего специальные символы, с помощью средства синтаксического анализа Microsoft XML (MSXML) средство синтаксического анализа может сообщить следующее сообщение об ошибке в строке и позиции первого специального символа:
В текстовом содержимом найден недопустимый символ.
Причина
XML-документ не помечается правильной схемой кодирования символов.
Разрешение
- Укажите правильную схему кодирования в инструкции по обработке XML.
- Повторно закодируйте XML-данные как правильные UTF-8.
Статус
Такое поведение является особенностью данного продукта.
Дополнительная информация
Специальный символ относится к любому символу за пределами стандартного набора символов Американского стандартного кода для обмена информацией (ASCII) 0x00 - 0x7F, например латинские символы с акцентами, умлауты или другие диакритические знаки. Схема кодирования XML-документов по умолчанию — UTF-8, которая кодирует символы ASCII со значением 0x80 или выше, иначе, чем в других стандартных схемах кодирования.
Чаще всего эта проблема возникает при работе с данными, использующими простую схему кодирования iso-8859-1. В этом случае самым быстрым решением обычно является первое из перечисленных выше в разделе Разрешение . Например, используйте следующее объявление XML:
<?xml version="1.0" encoding="iso-8859-1" ?>
<rootelement>
...XML data...
</rootelement>
Вместо этого можно закодировать каждый из этих символов с помощью ссылки на числовые сущности. Например, можно взять специальный символ á, использовать <test> á</test>
(десятичная версия) или <test>á</test>
(шестнадцатеричная версия).
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по