• ベストアンサー

char型からアスキーコードへの変換

Javaでchar型配列に入っている文字をアスキーコードに変換する方法をご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • seijro
  • ベストアンサー率50% (3/6)
回答No.2

char型は内部的には「UTF-16」でエンコーディングされているので、 キャストしただけでは、アスキーコードには変換できません。 (できることはできるが、他国後との対応を考えるとbyte配列に直しにくい。) 簡単にやるなら。 // char型配列の生成 char[] charArray = {'a', 'b', 'c'}; // byte型配列 byte[] asciiArray; // 文字列クラスの生成(getBytesメソッドを使うため) String string = new String(charArray); // 文字コード変換 (・∀・)σ GOGO! asciiArray = string.getBytes("Shift_JIS"); とかでいいんじゃないでしょうか? Shift_JISと書いた箇所に好きなエンコーディング名を入れてください。

その他の回答 (2)

回答No.3

charの値をintに「代入」するならキャストは不要(省略可能)です。 char c = 'a'; int i = c; と。 System.out.println(c); とすると文字が出力されます。 System.out.println((int)c); とするとアスキーコードが出力されます。 ですので、単にアスキーコードを取得するだけならキャストすればいいですし、intに代入したいのならそのまま代入して構いません。

  • alphion
  • ベストアンサー率19% (27/136)
回答No.1

単純に、型変換するだけじゃ駄目なの? たとえば、 char c='d'; int a=(int)c;

関連するQ&A