プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。
JAVAの文字コード変換のところで教えて頂きたい所があります。

はしご高(髙)  の文字をUTF-8からJISコードに変換してテキストファイルに書き込んでいるのですが、文字化けして"?"という文字になっています。

"髙"の文字をUTF-8からJISコードに変換の仕方のコーディング方法を教えて頂けないでしょうか。
現在下記の様に変換を行って書き込んでいます。
 String str = "髙";
 byte[] buf = str.substring(0, 1).getBytes("JIS0208");

OS:WindowsXP DB:Oracle10g 

宜しくお願い致しますm(__)m

A 回答 (2件)

実行されているJDKのバージョンはいくつになりますか?


JDK1.5以降でないと「x-windows-50220」がサポートされていないようです。
    • good
    • 0
この回答へのお礼

JDKは1.4を使用しております。
1.5からは、サポートされているのですね・・・
ありがとうございます。
JISに変換できないものは、エラーチェックにひかかるように
進めていくことにしました。

色々とありがとうございました!

お礼日時:2007/05/23 18:05

JIS X 0208 にははしご高はありません。


UTF-8からの変換時に変換先のキャラクターが
存在しないので、'?'に置き換えられているだけです。
文字化けではありません。

サポートされているエンコーディング
http://java.sun.com/javase/ja/6/docs/ja/technote …

にある
x-windows-50220 ならできるかも。
    • good
    • 0
この回答へのお礼

ありがとうございます。
変換先のキャラクターが存在しないと言うことですね!
だから、?に置き換えられるのか・・・ なるほどですね!!

ご指摘いただきましたx-windows-50220のエンコーディングを
早速試してみたのですが、サポートされていないようなエラーが表示されてしまいました。

お礼日時:2007/05/23 17:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!