2

これに適した API が見つかりません。これを試しました。

public static void main(String[] args) {
    for (int i = 2309; i < 3000; i++) {
      String hex = Integer.toHexString(i);
      System.out.println(hex + " = " + (char) i);
    }
  }

このコードは、Eclipse IDE でのみこのように出力されます。

905 = ?
906 = ?
907 = ?
...

これらの 10 進数と 16 進数の値を使用して Unicode 文字を取得するにはどうすればよいですか?

4

2 に答える 2

2

すべてのコンソールが等幅フォントを使用するため、このように印刷されます。フレーム内の JLabel でそれを試してみると、うまく表示されるはずです。

編集:

Unicode プリントストリームを作成してみてください

PrintStream out = new PrintStream(System.out, true, "UTF-8");

そしてそれに印刷します。

これがCMDウィンドウの出力です。

ここに画像の説明を入力

于 2013-04-22T07:19:58.803 に答える
0

から変更してUTF-8形式で保存するのを忘れました

[ファイル] > [プロパティ] > [テキスト ファイルのエンコーディングを選択]

これにより、Eclipse コンソールから正しい文字が正しく出力されます。デフォルトは cp1252 で?、理解できない文字のみを出力します。

于 2013-04-22T07:51:23.237 に答える