Java 文字化けの解決策:
解決策 1 (文字化けしたパラメータが多い場合、効率が低下します)
ブラウザのデフォルトのエンコードは ISO-8859-1 です。バックエンド サーブレットはリクエスト パラメータを受け取り、ISO-8859-1 に従ってデコードし、バイナリ ストリームを取得してエンコードします。 UTF-8で。
サンプルコード:
// 获得请求参数 String queryString = request.getQueryString(); // 按照ISO-8859-1方式解码 byte[] bytes = queryString.getBytes("ISO-8859-1"); // 按照UTF-8编码 String param = new String(bytes,"UTF-8");
解決策 2 (このメソッドは get リクエストのみをサポートします)
サーバー (tomcat) を変更します。構成:server.xml では、デフォルトは ISO-8859-1 (示されていません)、UTF-8
ソリューション 3 を追加できます (この方法のみ) post リクエストをサポートします)
リクエスト パラメータのエンコーディングをサーブレットに直接設定します -- 推奨
//设置请求参数编码 request.setCharacterEncoding("UTF-8");
post と get が同時に文字化けして見える場合は、方法 2 と方法 3 を組み合わせてください。文字化けした文字で応答するには、
を使用します -
// 设置MIME类型 response.setContentType("text/html"); // 设置编码 response.setCharacterEncoding("UTF-8"); //设置编码(简写) response.setContentType("text/html;charset=utf-8");
に応答するには、Java の詳細については、java 基本チュートリアル 列に注目してください。
以上がJava での文字化けコード処理方法のいくつかの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。