url 中国語の文字化け java
1. 文字列をトランスコードします: newString("xxxxx" .getBytes) ("iso-8859-1"),"utf-8")
このトランスコーディング方法には、指定された文字セットを使用してこの String をバイト シーケンスにエンコードし、結果を新しいバイト配列に変換し、指定された文字エンコーディングを使用して結果のバイト配列をデコードして、新しい String 文字列を構築します。この場合、漢字を 1 文字すべて解読できない状況が発生する可能性があります。このように、前の単語は正常に表示されますが、最後の単語が文字化けする場合があります。
したがって、この方法を使用することはお勧めできません。
2. パラメータを渡す前にトランスコードし、パラメータを受け取った後にトランスコードして戻します。
これを行うには 2 つの方法があります:
最初の方法:
パラメータを渡す前: java.net を使用します。 . URLEncoder.encode("xxxx","utf-8")、中国語を 16 進文字に変換します。
パラメータを受け取った後: java.net.URLDncoder.decode("xxxx", "utf-8") を使用して 16 進文字を中国語に変換します。
この方法で注意すべき点は、エンコード後に特殊文字が出現するため、その特殊文字を対応する16進数に置き換える必要があります。 URL パスのパラメータとして特殊文字を渡すと、特殊文字も文字化けしてしまうためです。
2 番目のタイプ:
パラメータを渡す前: encodeURI("xxxx")。
パラメータを受け取った後: java.net.URLDncoder.decode("xxxx", "utf-8") を使用して 16 進文字を中国語に変換します。
このメソッドで注意する必要があるのは、encodeURI を使用してトランスコードした後、特殊文字が表示されることです。このとき、特殊文字をトランスコードする必要があるため、encodeURI を 2 回使用します。
encodeURI(encodeURI("xxxx"))。 これら 2 つのトランスコーディング方法は非常に便利なので、皆さんも使用することをお勧めします。具体的な使用法:
1. クライアント:url=encodeURI(url);サーバー:
String linename = new String(request.getParameter(“name”).getBytes(“ISO-8859-1”),“UTF-8”);2. クライアント:
url=encodeURI(encodeURI(url)); //用了2次encodeURIサーバー:
String linename = request.getParameter(name); //java : 字符解码 linename = java.net.URLDecoder.decode(linename , “UTF-8”);php 中国語の Web サイト、無料の
Java 入門チュートリアル が多数あり、オンラインで学習することを歓迎します。
以上がJava URLが中国語文字化けした場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。