XML-Parser: Ungültiges Zeichen im Textinhalt gefunden

Dieser Artikel hilft Ihnen beim Beheben von Fehlern beim Analysieren von Extensible Markup Language (XML), die Sonderzeichen enthält, mithilfe des Microsoft XML-Parsers (MSXML).

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

Problembeschreibung

Wenn Sie xml analysieren, das Sonderzeichen enthält, mithilfe des Microsoft XML-Parsers (MSXML), kann der Parser die folgende Fehlermeldung an der Zeile und Position des ersten Sonderzeichens melden:

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 STANDARD-ASCII-Zeichensatzbereichs (American Standard Code for Information Interchange) 0x00 - 0x7F, z. B. lateinische Zeichen mit Akzenten, Umlauten oder andere diakritische Zeichen. Das Standardcodierungsschema 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 tritt dieses Problem auf, 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).