個々の文字コード、特にエンコーディングを直接sに変換することはできないため、代わりにを使用して変換char
する必要があります。ISO-8859-7はシングルバイトエンコーディングであるため、各文字コードは1つに対応します。byte[]
String
byte
Charset cs = Charset.forName("ISO-8859-7");
for (int i = 211; i <= 217; i++) {
String s = new String(new byte[] { (byte) i }, cs)
System.out.println(
String.format("Character %s, codepoint %04X", s, (int) s.charAt(0)));
}
編集:上記の出力形式を使用すると、ISO-8859-7で指定されているように、Unicodeコードポイントが正しくデコードされていることを確認できます。それでも?
文字の代わりにsが表示される場合は、出力に問題があります。コンソールはこれらの文字をサポートしていません。
の結果を確認してくださいSystem.getProperty("file.encoding")
-それはある種のUnicode(UTF-8
など)である必要があります。IDEからコードを実行する場合は、コンソールエンコーディング設定の構成を確認してください。