デフォルトの文字コードを設定する

Windowsでも、他のプラットフォームからファイルを持ってくれば
文字コードEUC-JP、Shift_JISUTF-8だったりすることはあるわけで
そんな場合は、文字コードを設定して実行したい。

ソース

CharcterCodeSJIS.groovy

Shift_JISで書かれたファイル
内容

  println "Shift_JIS日本語"
CharcterCodeEUC.groovy

EUCで書かれたファイル
内容

  println "EUC日本語"
CharcterCodeUTF8.groovy

UTF-8で書かれたファイル
内容

  println "UTF-8日本語"

実行結果

Shift_JIS
[D:\workspace\groovy_SandBox]groovy CharcterCodeSJIS.groovy
Shift_JIS日本語
[D:\workspace\groovy_SandBox]groovy -c Shift_JIS CharcterCodeSJIS.groovy
Shift_JIS日本語
[D:\workspace\groovy_SandBox]groovy -c SJIS CharcterCodeSJIS.groovy

Shift_JIS日本語

Windowsなのでファイルの文字コードを指定しなくても動作する

EUC
[D:\workspace\groovy_SandBox]groovy CharcterCodeEUC.groovy
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed, D:\workspace\groovy_SandBox\CharcterCodeEUC.groovy: 1: unexpected char: 0xFFFF @ line 1, column 18.
   println "EUCニ?ワク?
                    ^

1 error
[D:\workspace\groovy_SandBox]groovy -c EUC-JP CharcterCodeEUC.groovy
EUC日本語
[D:\workspace\groovy_SandBox]groovy -c EUC CharcterCodeEUC.groovy
Caught: BUG! exception in phase 'parsing' in source unit 'D:\workspace\groovy_SandBox\CharcterCodeEUC.groovy' EUC

Windowsなのでファイルの文字コードを指定しないとMultipleCompilationErrorsExceptionになる。
EUC-JPはOKで、EUCはNG

UTF-8
[D:\workspace\groovy_SandBox]groovy CharcterCodeUTF8.groovy
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed, D:\workspace\groovy_SandBox\CharcterCodeUTF8.groovy: 1: unexpected char: 0xFFFF
@ line 1, column 21.
   println "UTF-8譌・譛ャ隱?
                       ^

1 error

[D:\workspace\groovy_SandBox]groovy -c UTF-8 CharcterCodeUTF8.groovy
UTF-8日本語
[D:\workspace\groovy_SandBox]groovy -c UTF8 CharcterCodeUTF8.groovy
UTF-8日本語

Windowsなのでファイルの文字コードを指定しないとMultipleCompilationErrorsExceptionになる。
UTF-8、UTF8ともにOK



実行環境