- Home ›
- Java入門 ›
- Javaソースファイルのエンコーディング ›
- HERE
ソースファイルのエンコーディング名を指定してコンパイル
Javaで環境毎に設定されているエンコーディングと異なる文字コードでソースコードを保存した場合、コンパイル時にソースコードの文字コードを指定する必要があります。
文字コードを指定するには「-encoding」オプションを使います。
javac -encoding エンコーディング名 ソースファイル名
エンコーディング名にはソースコードを保存した文字コードを指定して下さい。
JDK6の場合に指定可能な文字コードは「サポートされているエンコーディング」にて参照できます。ここでは日本語環境で多く使われるエンコーディングを一部紹介します。
| java.nio API用 | java.io/java.lang API用 | 説明 |
|---|---|---|
| UTF-8 | UTF8 | 8 ビット Unicode (UCS) Transformation Format |
| EUC-JP | EUC_JP | JISX 0201、0208、0212、EUC エンコーディング、日本語 |
| ISO-2022-JP | ISO2022JP | ISO 2022 形式の JIS X 0201、0208、日本語 |
| Shift_JIS | SJIS | Shift-JIS、日本語 |
| windows-31j | MS932 | Windows 日本語 |
文字コード毎に二通りの記述方法があります。正式な名前は1列目のようですが2列目に記載されているものでも構いません。
例えばソースファイルを文字コードとしてUTF-8を使って保存した場合、次のようにコンパイルを行います。
javac -encoding UTF-8 sample.java
他の文字コードの場合も同様です。
サンプル
では実際に試してみます。
class JSample2_1{
public static void main(String args[]){
System.out.println("今日もいいお天気ですね");
}
}
上記を文字コードにUTF-8を指定して保存します。そして次のようにコンパイルを行います。
javac -encoding UTF-8 JSample2_1.java
前のページでは警告が表示されましたが、今回は何も表示されるコンパイルが成功しました。では実行してみます。
実行も正常に行われました。
( Written by Tatsuo Ikura )
JavaDrive