- ベストアンサー
char型からアスキーコードへの変換
Javaでchar型配列に入っている文字をアスキーコードに変換する方法をご教授ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
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)
- pcbeginner
- ベストアンサー率46% (261/560)
charの値をintに「代入」するならキャストは不要(省略可能)です。 char c = 'a'; int i = c; と。 System.out.println(c); とすると文字が出力されます。 System.out.println((int)c); とするとアスキーコードが出力されます。 ですので、単にアスキーコードを取得するだけならキャストすればいいですし、intに代入したいのならそのまま代入して構いません。
- alphion
- ベストアンサー率19% (27/136)
単純に、型変換するだけじゃ駄目なの? たとえば、 char c='d'; int a=(int)c;