ホームページ >バックエンド開発 >PHPチュートリアル >1 バイト UTF-8 シーケンスのバイト 1 が無効です。 solution_PHP チュートリアル

1 バイト UTF-8 シーケンスのバイト 1 が無効です。 solution_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:43:102763ブラウズ

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に変更して保存します

またはプログラムを変更してください

コードは次のとおりですコードをコピー 私は Eclipse エディターを使用しており、次のことを行うだけです
SAXReader リーダー = 新しい SAXReader(); org.dom4j.Document ドキュメント = Reader.read("D:ha.xml"); = new OutputFormat() の OutputFormat

; of.setEncoding("UTF-8"); //エンコード方式を変更する
XMLWriter ライター = new XMLWriter(new FileWriter "d:dom4j.xml"),
;


Eclipseで変更できます。Eclipseメニューの[プロジェクト]→[プロパティ]→[リソース]の右側にある「テキストファイルのエンコーディング」をクリックし、元の文字列を「UTF-」に変更します。 8インチ。

http://www.bkjia.com/PHPjc/633192.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/633192.html技術記事 php を使用して XML を解析すると、1 バイトの UTF-8 シーケンスの無効なバイト 1 が間違っているというメッセージが表示されます。Baidu でこの問題を確認したところ、エンコードの問題だと言われました。その結果、エンコードを処理したところ、問題が解決しました。 KOするつもりです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。