- 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 )