-1

Javaを使用してファイルを読み込もうとしていますが、ファイルにも特殊文字が含まれています。ファイルの内容を別のファイルに書き込もうとしています。

特殊な文字ファイルを読み取るための解決策は何ですか?

4

2 に答える 2

3

ファイルをUTF-8でエンコードし、Javaエンコード対応のストリーム演算子を使用します。

new InputStreamReader(new FileInputStream(file), "UTF-8")
于 2012-12-14T09:25:10.157 に答える
0

ファイルが使用する正確なエンコーディングを見つけて、それをInputStreamReaderパラメータで指定する必要があります。

それでも、InputStreamReaderを含むInputStreamをReaderまたはBufferedReaderにラップして、文字データを読み取るのが最適な場合がよくあります。

BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(your file), "UTF-8"));

コメント用に編集:
FileReader Javaのプラットフォームのデフォルトのエンコーディングを使用します。これは、Javaが実行されているコンピューターのシステム設定によって異なります。

残念ながらFileReader、エンコーディングを設定することはできません。代わりに、上記のコードを使用して、ファイルの目的のエンコーディングを取得する必要があります。

于 2012-12-14T09:30:23.587 に答える