Java でその番号から Unicode 文字を取得する
- Java でのキャストを使用して Unicode 文字を取得する
-
Java で
String.valueOf()
メソッドを使用して Unicode 文字を取得する -
Java で
Character.toChars()
メソッドを使用して Unicode 文字を取得する
このチュートリアルでは、Java で Unicode 文字をその番号から取得する方法を紹介します。
Unicode は、プログラミング言語のすべての文字と記号にコードを割り当てる文字エンコードシステムです。他のエンコーディング標準はすべての言語をカバーしていないため、Unicode は、言語の任意の組み合わせを使用してデータを取得または組み合わせることができる唯一のエンコーディング方法です。
Java は Unicode 文字を強力にサポートしています。このチュートリアルでは、その番号から Unicode 文字を作成する方法について説明します。
Java でのキャストを使用して Unicode 文字を取得する
ここでは、int 値を char にキャストすることで Unicode 値を取得します。
Character.toString()
メソッドを使用して、Unicode 文字を表す int から文字列に文字列を取得することもできます。ただし、このメソッドをコードに適用する前に、まずコードを明示的に char に変換する必要があります。
以下の例を参照してください。
public class SimpleTesting {
public static void main(String args[]) {
int code = 0x2202;
System.out.println((char) code);
String code_str = Character.toString((char) code);
System.out.println(code_str);
}
}
出力:
∂
∂
Character.toString()
メソッドはオーバーロードされたメソッドであり、引数としてコードポイントを取り、指定されたコードポイントの文字列表現を返します。別の例については、以下のコードを参照してください。
public class SimpleTesting {
public static void main(String args[]) {
int code = 0x13434;
String code_str = Character.toString((char) code);
System.out.println(code_str);
}
}
出力:
㐴
\u
ビット)は HEX であるため、コードの前に 0x
拡張子を付けました。Java で String.valueOf()
メソッドを使用して Unicode 文字を取得する
この例では、引数として char 型を取り、文字列を返す String.valueOf()
メソッドを使用しました。キャスト後、最初に char を取得し、それを valueOf()
メソッドに渡します。
以下の例を参照してください。
public class SimpleTesting {
public static void main(String args[]) {
int code = 0x13434;
char ch_code = (char) code;
String code_str = String.valueOf(ch_code);
System.out.println(code_str);
}
}
出力:
㐴
Unicode 文字を取得するもう 1つの例を見てみましょう。
public class SimpleTesting {
public static void main(String args[]) {
int code = 0x2202;
char ch_code = (char) code;
String code_str = String.valueOf(ch_code);
System.out.println(code_str);
}
}
出力:
∂
Java で Character.toChars()
メソッドを使用して Unicode 文字を取得する
この例では、char を返す toChar()
メソッドを使用しました。
コードを Unicode に変換するには、最初に parseInt()
を使用して 16
を基数として渡して 16 進整数に変換する必要があります。この後、Character.toChars()
メソッドを使用して整数を char データ型に変換しました。
最後に、String.valueOf()
メソッドを呼び出して文字列を生成します。以下のコード例を見てください。
public class SimpleTesting {
public static void main(String args[]) {
String code = "2202";
String code_str = String.valueOf(Character.toChars(Integer.parseInt(code, 16)));
System.out.println(code_str);
}
}
出力:
∂
Unicode 文字を取得するもう 1つの例を見てみましょう。
public class SimpleTesting {
public static void main(String args[]) {
String code = "1434";
String code_str = String.valueOf(Character.toChars(Integer.parseInt(code, 16)));
System.out.println(code_str);
}
}
出力:
ᐴ
このメソッドは、整数を明示的に型キャストする代わりに、toChars()
メソッドを使用して整数を文字に変換することを除いて、基本的に前のメソッドと同じです。