form get方法について中国語で文字化けの考えがあります。

453 ワード

form getメソッドはデータを転送する時、デフォルトでは単バイトコードです。つまり1バイトは1文字に対応しています。英語の国ではiso-859-1コードをよく使います。
このようなコードはjvmのunicodeでは認識できません。直接にutf 8を使うと必ず文字化けが発生します。
まずiso-859-1をunicodeバイトコードに変換しなければなりません。
Byte[] unicode = url.getBytes("ISO-8859-1");
このバイト配列はunicodeコードで保存されています。unicodeは他のコードに変換できます。
私たちはそれをutf-8に変えます。
String utf8 = new String(unicode, "utf-8");
これが私たちが欲しいデータです。