0
我想獲取多個文本文件並將它們全部合併到一個新文件中。但是,查看創建的新文件時,有一些奇怪的字符替換了引號,我無法弄清楚爲什麼會發生這種情況。試圖指定編碼,但它沒有解決問題。我使用錯誤的字符編碼嗎?BufferedReader創建奇數字符,我使用哪種字符編碼?
Reader reader = new InputStreamReader(new FileInputStream(fileName), "utf-8");
這裏是問題:
原始文件包含:
|3_PatFemale("X")|3_PatSex (」M」 or 「F」)|
新文件包含
|3_PatFemale("X")|3_PatSex (�M� or �F�)|
代碼:
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(exportFile),"UTF-8"));
for (File f : files) {
FileInputStream fis;
try {
fis = new FileInputStream(f);
BufferedReader in = new BufferedReader(new InputStreamReader(fis));
String aLine;
while ((aLine = in.readLine()) != null) {
out.write(aLine);
out.newLine();
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
您需要使用與FileOuputStream編碼爲好,你有沒有在你的代碼顯示在這裏。 –
對不起,我在頂部添加了小行 – tai
謝謝。必須將編碼更改爲ANSI。我相信這解決了這個問題。 – tai