- ベストアンサー
日本語文字列をユニコードの列に変換して表示
する方法を教えてください。 例えば 送信→\u9001\u4fe1 という風に出す方法です。 Javaプログラムでもかまいません。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
よく解りませんが。直感的に作っていました。 以下のようで、でも、いいのかな? 「送信」を 90 01 4f e1 の文字列に変換してました。 String sen ="送信"; byte [] ss=null; try { ss = sen.getBytes("UTF-16"); } catch (UnsupportedEncodingException ex) { Logger.getLogger(goo_an.class.getName()).log(Level.SEVERE, null, ex); } for(int i=0;i<ss.length;++i){ Byte b = new Byte(ss[i]); String UTF16 = new String("0"+Integer.toHexString(b.intValue())); String dsp =UTF16.substring(UTF16.length()-2, UTF16.length()); System.out.println(dsp); } 実行結果 debug: fe ff 90 01 4f e1 構築成功 (合計時間: 11 秒) こんな感じでも、いいのかな。?? いろいろテストしていないので、自分の欲しい文字列を 得るためには、改良してみてください。
その他の回答 (1)
- osamuy
- ベストアンサー率42% (1231/2878)
由緒正しく「native2ascii」とか。要JDK。
補足
native2asciiはどこにあるのでしょうか? Fedora-Javaを使っています。 # java -version java version "1.6.0_0" IcedTea6 1.4 (fedora-15.b14.fc10-i386) Runtime Environment (build 1.6.0_0-b14) OpenJDK Client VM (build 14.0-b08, mixed mode) #
お礼
ありがとうございます。