[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends:00014] Re: データベースからの得たデータの文字コード変換
えんどうです。
MySQL の上では EUC-JP のようですが、JDBC 内部は Unicode に変換されます。
Resultset#getString(カラム名) で取得した文字は
Unicode になっていると思います。
このまま System.out.println() でコンソール表示すると、
OSの Locale にしたがって表示されるはずです。
LANG=ja_JP.eucJP なら EUC で表示されるはずです。
> このEUC文字列をSJISに変換するソースコードは
> String sound = new String(sound_e.getBytes("SJIS"), "EUC_JP");
> で文字コード変換するのですがこれを
> System.out.println("encode_test===" + sound);
> でコンソールに吐き出すと
> trace :3F3F3F41(8859_1の文字コード)
> になってしまい文字化けしてしまいます。
>
> なぜ、8859_1の文字コードになってしまうのか理解できません。
よくわからないのですが、環境変数 LANG はどうなっていますか?
export LANG=ja_JP.eucJP などと設定しても同じでしょうか?
--
ENDO Yasuyuki <yasuyuki@xxxxxxxxxxxx>
http://www.ss.iij4u.or.jp/~eyasuyuk/ (Personal/Japanese Only)
http://www.javaopen.org/jfriends/ (Japanese Only)