Javaで、コピペしたコードを貼り付けて、javacすると、こういうエラーが。
PS C:\pg\java> javac .\Wind.java
.\Wind.java:6: エラー: この文字は、エンコーディングMS932にマップできません
frame.setSize(850,700); 縲?縲?縲?縲?縲?縲?縲?縲? 縲?//
.\Wind.java:6: エラー: 文ではありません
frame.setSize(850,700); 縲?縲?縲?縲?縲?縲?縲?縲? 縲?//
^
ファイルの文字コードはちゃんとUTF-8だし、BOMがついてるとかもないし…
調べてみると、文字コードを指定してエンコードするとよさそう。
PS C:\pg\java> javac -encoding UTF-8 .\Wind.java
.\Wind.java:6: エラー: '\u3000'は不正な文字です
frame.setSize(850,700); //
あれれ。
前述のエラーはでなくなったけど、新しいエラーが。
調べてみると、\u3000
は全角空白らしい。なるほど。
Atomで正規表現を有効にして、\u3000
を置換してみる。
改めて、
PS C:\pg\java> javac -encoding UTF-8 .\Wind.java
できました。
文字コード指定しなくてもできんじゃね?
PS C:\pg\java> javac .\Wind.java
できた。
いっぱいそういう文字を含んだファイルが有る場合は、sedなんかでまとめて置換すると良いと思う。
といってもソースの中に日本語を含む場合は、文字化けを防ぐためにビルドするときに前述のオプションを付ける必要がある。
javac -encoding UTF-8 .\Wind.java