XML パーサー: テキスト コンテンツで無効な文字が見つかりました
この記事は、Microsoft XML パーサー (MSXML) を使用して特殊文字を含む拡張マークアップ言語 (XML) を解析するときのエラーを解決するのに役立ちます。
元の製品バージョン: .NET Framework
元の KB 番号: 238833
現象
Microsoft XML パーサー (MSXML) を使用して特殊文字を含む XML を解析すると、パーサーは最初の特殊文字の行と位置に次のエラー メッセージを報告することがあります。
テキスト コンテンツで無効な文字が見つかりました。
原因
XML ドキュメントは、適切な文字エンコード スキームでマークされていません。
解決方法
- XML 処理命令で適切なエンコード 方式を指定します。
- XML データを適切な UTF-8 として再エンコードします。
状態
この動作は仕様です。
詳細
特殊文字は、0x00の標準のアメリカ標準コード (ASCII) 文字セットの範囲外の任意の文字 (アクセント、ウムラウト、またはその他の発音記号を含むラテン文字など) 0x7Fを指します。 XML ドキュメントの既定のエンコード スキームは UTF-8 で、値が 0x80 以上の ASCII 文字を他の標準エンコード スキームとは異なる方法でエンコードします。
ほとんどの場合、この問題は、単純な iso-8859-1 エンコード スキームを使用するデータを操作している場合に発生します。 この場合、最も簡単な解決策は、通常、[ 解決策 ] セクションの最初の一覧です。 たとえば、次の XML 宣言を使用します。
<?xml version="1.0" encoding="iso-8859-1" ?>
<rootelement>
...XML data...
</rootelement>
代わりに、数値エンティティ参照を使用して、これらの各文字をエンコードできます。 たとえば、特殊文字 á を使用したり、(10 進バージョン)、または (16 進バージョン) を使用 <test> á</test>
できます <test>á</test>
。
フィードバック
https://aka.ms/ContentUserFeedback。
近日公開予定: 2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub イシューを段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、以下を参照してください:フィードバックの送信と表示