FC2ブログ
HOME   »  2012年04月
Archive | 2012年04月

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[Java]ASCIIコードを文字列に変換する

以前の記事「文字列をASCIIコードに変換する」とは逆に、ASCIIコードを文字列に変換する場合は、Stringクラスのコンストラクタ(String(byte[] bytes, String charsetName)シグネチャ)が使用できる。
public class Main {
    public static void main(String[] args) {
        byte[] asciiCodes = new byte[]{65, 66, 67};
        String resultString;
        try {
            resultString = new String(asciiCodes, "US-ASCII");
        } catch (Exception e) {
            e.printStackTrace();
            return;
        }
        System.out.println("変換後の文字列:" + resultString);
    }
}
上記では、文字列に変換したいASCIIコードを格納したbyte配列(変数asciiCodes)をStringクラスのコンストラクタの第1引数に設定し、文字セットとしてASCIIコードを表す文字列"US-ASCII"を第2引数に指定することで、変換後の文字列を取得している(変数resultString)。

上記の実行結果は以下の通り。


変換後の文字列:ABC



スポンサーサイト

[Java]文字列をASCIIコードに変換する

文字列をASCIIコードに変換するには、StringクラスのgetBytesメソッドが使用できる。

但し、getBytes()シグネチャではデフォルトの文字セット(環境に依存するのでASCII以外の文字セットもあり得る)が使用される為、getBytes(String charsetName)シグネチャを使用して明示的に文字セットを指定する必要がある。
public class Main {
    public static void main(String[] args) {
        byte[] asciiCodes;
        String sampleString = "ABC";
        try {
            asciiCodes = sampleString.getBytes("US-ASCII");
        } catch (Exception e) {
            e.printStackTrace();
            return;
        }
        for (int i = 0; i < asciiCodes.length; i++) {
            System.out.println("asciiCodes[" + i + "]:" + asciiCodes[i]);
        }
    }
}
上記では、getBytesメソッドを使用して文字列"ABC"(変数sampleString)の各文字のASCIIコードを取得し、byte配列型変数asciiCodesに格納している。
ここでgetBytesメソッドの引数として文字列"US-ASCII"を設定することにより、文字セットとしてASCIIを使用することを明示的に指定している。

上記の実行結果は以下の通り。


asciiCodes[0]:65
asciiCodes[1]:66
asciiCodes[2]:67



プロフィール

まさお

Author:まさお
プログラミングは趣味レベルなので、お手柔らかに。

ブログランキング
ブログランキング参加中。是非クリックお願いします。


にほんブログ村 IT技術ブログ Androidアプリ開発へ

人気ブログランキングへ

ブログランキング



ブログ王

ブログランキング【ブログの惑星】

プログラム人気ブログランキング
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。