なぜコマンドライン中国のディスプレイに印刷が文字化けし、通常表示することができ、中国内のファイルに書き込まれていますか?
注意:メモ帳が読み込まれたバイトので、原因ではない、と読みが文字化けしている場合は、文字化けも書かれるべきような気がします。
(文字ストリームます)このプロセスの、それが原因でエラーを生成するために使用されるさまざまなエンコードとデコードとエンコードのではないだろう-それは、バイトストリーム「は、コード解読」されていないので、正確には
そのソースファイルを確実にするためにバイトストリームで、**実際ターゲットファイルがまったく同じで、もちろん、ファイルを開いて、通常の問題であり**
、画面上に印刷されますが、2として2バイト文字を印刷するには、あなたのコードを2バイト文字を入れているので間違っていますうち、性質が文字化けしています
輸入java.io. *;
パブリッククラスFileInputStream1 {
公共の静的な無効メイン(文字列[]引数)例外{スロー
=新しいFileInputStreamを(新しいファイル( "D:\\ aaa.txt"))でのFileInputStreamを、
FileOutputStream OU =新しいのFileOutputStream(新しいファイル( "D:\\ bb.txt"));
lenはint型;
バイト[] =新しい新しいバイトB [10];
しばらく(!(LEN = in.read(B))= -1){//コードを読み込むには、いくつかのバイトの文字が文字化けして印刷した後、明確ではありません
ou.write(B、0、LEN);
System.out.print((CHAR)LEN)の; //文字バイトは、昇順コードテーブルが存在し、直接文字を転送することができるので、アルファベットが歪みない場合チャーである文字読み出すための型バイト
}
in.closeを();
ou.close();
}
}
FileInputStreamのFileOutputStreamと直接ファイルを読み書きすることができますが(つまり、コピーを完了することができます)、転流をInputStreamReaderのラップするために必要なコンソールで読ん所望の印刷文字が文字に変わります。