最近BufferedReaderのテキストファイルを読み、そして内容を読み出し、新しいPrintWriterを別のファイルに書き込みます。
この問題は見つかっていない前に、それが中国のテキストコンテンツであり、コンテンツが読み出したコンテンツで書かれている場合は文字化けするということです。
私は解決策を考えました。
どのような文字セットのエンコード設定を読み出す第1の使用BufferedReaderの:
// 文件路径:filePathにする ファイルのファイル= 新しいファイル(filePathに); FileInputStreamのフィン = 新しいFileInputStreamを(ファイル); 中にInputStreamReader = 新しい InputStreamReaderの(フィン、 "GBK" ); BufferedReaderのBR = 新しい BufferedReaderの(に);
一度設定するには、いくつかの読み出し動作を行う、その後のPrintWriterの書き込みを呼び出し、もちろん、また、同じ文字セットエンコーディングを設定します。
一時ファイルをファイル= 新しいファイル(NEWPATH)。 PrintWriterのTPW = nullを。 FOのFileOutputStream = 新しいのFileOutputStream(TMPFILE)。 OSWのOutputStreamWriter = 新しいのOutputStreamWriter(FO、 "GBK" ); TPW = 新しい PrintWriterの(OSW)。
ます。https://www.cnblogs.com/xinmomoyan/p/11002217.htmlで再現