[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends:00027] Re: データベースからの得たデータの文字コード変換
えんどうです。
> コンソール画面はEUC設定なのでsound_name(効果音A)
> はEUC_JPであることが解ります。
これは誤りです。
変数 sound_name には Unicode で格納されています。
System.out.println() が EUC-JP に変換しているだけです。
これはそのときの Locale が ja_JP.eucJP だからであり、
Shift_JIS の環境であれば Shift_JIS になります。
> SJISのバイナリデータを取得はできるのですがこれをnew Stringで文字列を生成
> するとバイナリデータの文字列になってしまいます。(当たり前ですよね...)
再度 String を生成しようとするのがうまく行かない原因な気がします。
バイナリーのまま write() メソッドでストリームに書き込めば良いのでは。
> どうしてもEUC_JPの文字列をSJISの文字列に変換することができません。
String型の変数には Unicode で格納されます。
出力前に1回だけ SJISのバイト列に変換して、
バイト列のまま write() メソッドで出力ストリームに書き込めばよいと思います。
--
ENDO Yasuyuki <yasuyuki@xxxxxxxxxxxx>
http://www.ss.iij4u.or.jp/~eyasuyuk/ (Personal/Japanese Only)
http://www.javaopen.org/jfriends/ (Japanese Only)