前のページでフォームから送られ来るリクエストパラメータの処理方法について確認しました。実はその時のプログラムでは日本語のデータを送付すると文字化けします。 例えばフォームの入力画面で日本語を含む文字を入力して送信します。 すると次のように日本語を入力した部分は文字化けして表示されます。 文字化けしてしまう理由は次の通りです。 フォームで入力された値などがサーバに送信される際にURLエンコードが行われバイト列としてサーバに送信されます。サーブレット側では送られてきたバイト列を元の文字列に戻そうとするのですが、その時にデータの文字コードを「ISO-8859-1(Latin1)」だと判断して戻してしまいます。ここで文字化けが発生します。 そこで正しい文字コードを使ってバイト列から文字列を取り出すように変更します。1つ目は事前に文字コードを指定する方法、2つ目は一度誤って処理された文字列をバイト列
![日本語パラメータの対応(getBytes) - リクエスト情報の取得 - サーブレット入門](https://cdn-ak-scissors.b.st-hatena.com/image/square/695f522f7db1ef622e640a5cb49415ebd007af19/height=288;version=1;width=512/https%3A%2F%2Fwww.javadrive.jp%2Fservlet%2Frequest%2Fimg%2Fp4.png)