XML-Parser: Im Textinhalt wurde ein ungültiges Zeichen gefunden

Dieser Artikel hilft Ihnen, Fehler zu beheben, wenn Sie Extensible Markup Language (XML) analysieren, die Sonderzeichen mithilfe des Microsoft XML-Parsers (MSXML) enthält.

Ursprüngliche Produktversion:   .NET Framework
Ursprüngliche KB-Nummer:   238833

Problembeschreibung

Wenn Sie XML mit Sonderzeichen mithilfe des Microsoft XML-Parsers (MSXML) analysieren, meldet der Parser möglicherweise die folgende Fehlermeldung an der Zeile und Position des ersten Sonderzeichens:

Im Textinhalt wurde ein ungültiges Zeichen gefunden.

Ursache

Das XML-Dokument ist nicht mit dem richtigen Zeichencodierungsschema gekennzeichnet.

Lösung

  • Geben Sie das richtige Codierungsschema in der XML-Verarbeitungsanweisung an.
  • Codieren Sie die XML-Daten erneut als richtigeS UTF-8.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Weitere Informationen

Sonderzeichen bezieht sich auf alle Zeichen außerhalb des Standardmäßigen American Standard Code for Information Interchange (ASCII)-Zeichensatzbereichs von 0x00 – 0x7F, z. B. lateinische Zeichen mit Akzenten, Umlauten oder anderen diakritischen Zeichen. Das Standardmäßige Codierungsschema für XML-Dokumente ist UTF-8, das ASCII-Zeichen mit einem Wert von 0x80 oder höher anders codiert als andere Standardcodierungsschemas.

In den meisten Fällen wird dieses Problem angezeigt, wenn Sie mit Daten arbeiten, die das einfache Iso-8859-1-Codierungsschema verwenden. In diesem Fall ist die schnellste Lösung in der Regel die erste, die zuvor im Abschnitt "Lösung" aufgeführt ist. Verwenden Sie beispielsweise die folgende XML-Deklaration:

<?xml version="1.0" encoding="iso-8859-1" ?>
<rootelement>
    ...XML data...
</rootelement>

Stattdessen können Sie jedes dieser Zeichen mithilfe des numerischen Entitätsverweises codieren. Sie können z. B. das Sonderzeichen á verwenden <test> &#225;</test> (Dezimalversion) oder <test>&#x00E1;</test> Hexadezimalversion verwenden.