ホームページ >バックエンド開発 >PHPチュートリアル >1 バイト UTF-8 シーケンスのバイト 1 が無効です。 solution_PHP チュートリアル
PHP を使用して XML を解析すると、1 バイトの UTF-8 シーケンスの無効なバイト 1 が間違っているというメッセージが表示されます。Baidu はこの問題をチェックし、エンコードの問題であると言いました。その結果、エンコードを処理したところ、次のことが判明しました。以下に解決策を共有しましょう。
エラーメッセージ
1バイトUTF-8シーケンスのバイト1が無効です
原因分析
中国語版の Windows では、Java のデフォルトのエンコーディングは GBK です。つまり、XML を utf-8 形式で保存するようにマークしましたが、ファイルは実際には GBK 形式で保存されるため、 GBK および GB2312 エンコードを使用して生成された XML ファイルは正しく解析できるが、UTF-8 形式で生成されたファイルは XML パーサーで解析できない理由。
xmlのエンコーディング属性値をUTF-8からUTF8に変更します
org.xml.sax.SAXParseException: 末尾セクションではコンテンツは許可されません
問題を解決するには、まず文字列を解析してtrim()します。
解決策:
1. 最も簡単な方法は、 を に変更することです。
2. または、XMLを開いてファイルとして保存する際に、文字セットをUTF-8に変更して保存しますまたはプログラムを変更してください
コードをコピー | |
SAXReader リーダー = 新しい SAXReader();
org.dom4j.Document ドキュメント = Reader.read("D:ha.xml");
= new OutputFormat() の OutputFormat ;
of.setEncoding("UTF-8"); //エンコード方式を変更する |
Eclipseで変更できます。Eclipseメニューの[プロジェクト]→[プロパティ]→[リソース]の右側にある「テキストファイルのエンコーディング」をクリックし、元の文字列を「UTF-」に変更します。 8インチ。
http://www.bkjia.com/PHPjc/633192.html