Java「エラー:GBKをエンコードするマッピング不可文字」の解決

2945 ワード

       :http://blog.csdn.net/l1028386804/article/details/46583279
public class HelloWorldwww{
         public static void main(String args[]){
                int num ; //         num
                num = 3 ; //         3
               //      ,   "+"      
                System.out.println("    "+num);
                System.out.println("  "+num+"   !");
         }

 }

DOSコンパイルによるプロンプトエラー:GBKを符号化するマッピング不可文字
解决 java “错误:编码GBK 的不可映射字符”_第1张图片
チェック:
1、ネイティブエリアの言語設定を調べる中国語は問題ない
解决 java “错误:编码GBK 的不可映射字符”_第2张图片
2、このプログラムはeclipse上で正常に実行できる
右クリックproperties-resource-text file encodingはUTF-8
解决 java “错误:编码GBK 的不可映射字符”_第3张图片
解決方法:
1、実行はjavac-encoding UTF-8 HelloWorld www.JAvaコンパイルパス

2、メモ帳javaソースファイルを開き、ANSI符号化を選択するために保存する
解决 java “错误:编码GBK 的不可映射字符”_第4张图片
コンパイルパス

説明:
ANSI:アメリカ国家標準協会、システムプリセットの標準文字格納フォーマット.簡体字中国語符号化GB 2312は、実際にはANSIのコードページ936である.
UTF-8:汎用ワードセット変換フォーマットで、これは伝送のために設計された符号化であり、2進法であり、8ビット単位でUnicodeを符号化し、同類ビットグループ内で8ビットしかサポートできない重要な資料類の旧式伝送媒体を使用する場合、UTF-8フォーマットを選択することができる.
UTF-8では、英語の文字はASCII符号化と同じなので、元の関数ライブラリは引き続き使用できます.一方、中国語の符号化範囲は、0080-07 FFの間であるため、2バイト表示(ただし、この2バイトとGB符号化の2バイトは異なる)であり、専用のUnicode処理クラスでUTF符号化を処理することができる.