1
對不起,標題聽起來不清楚,我只是不知道該如何解釋。寫入文件時出錯 - 將文件加倍
所以,我想讀一些文件,修改它們,然後將它們添加到另一個文件。
這是原始文件:
line number one
line number two
line number three
等等......
但是,當涉及到其打印到另一個文件,我得到這個:
line number one
line number one line number one
line number one line number one line number two
line number one line number one line number two line number two
這是我的代碼
這是讀取原始文件的部分
try {
File f = new File(path);
try (FileReader fr = new FileReader(f); BufferedReader br = new BufferedReader(fr)) {
while ((aux=br.readLine())!=null) {
//easyDecryp is the method that modifies the line.
//there's nothing wrong with it.
output += easyDecryp(aux)+"\n";
aux="";
}
br.close();
fr.close();
}
} catch(IOException e) {
System.out.println("Error: "+e.getMessage());
}
這裏我寫進新的
try {
File f = new File(path);
try (FileWriter fw = new FileWriter(f); PrintWriter pw = new PrintWriter(fw)) {
pw.println(output);
}
} catch(IOException e) {
System.out.println("Error: "+e.getMessage());
}
輸出是保存行的變量。他們全部。 應該由線讀取行,然後寫入新文件中,就像這樣:
output = line1
//New line added
output = line1 \n line2
//Note the new line tag between every line
您擁有的代碼不會顯示您寫入文件的位置。什麼是「輸出」變量? – Dave
發佈代碼如何將內容寫入另一個文件。你使用** output **變量,它是追加行內容。 **輸出+ = easyDecryp(aux)+「\ n」; ** – MouseLearnJava
在try-with-resources結尾處,您不需要顯式的'Closeable.close()',順便說一句。 – mschonaker