首先,我是Java的新手。我已經爲自己設定了一個小項目,目前我陷入困境。我正在嘗試寫入已存在的文件,但它只是覆蓋它。我試圖替換包含'maxBooks'的行。用Java寫入文件
這是比我使用的代碼:
FileWriter writeFile = new FileWriter(fileLocation);
BufferedReader readLines = new BufferedReader(new FileReader(fileLocation));
BufferedWriter writeLines = new BufferedWriter(writeFile);
System.out.println("\n-----File Begin-----");
while((finalLines = readLines.readLine()) != null){
if(finalLines.contains("maxBooks")){
writeLines.newLine();
writeLines.write(finalLines);
System.out.println("This is the if statement");
System.out.println(finalLines);
} else {
fileLines.add(new String(finalLines));
System.out.println("This is the else statement");
System.out.println(finalLines);
}
}
System.out.println("------File End------");
請記住,我已經離開了try和catch。請讓我知道如何編輯文本文件。讓我知道如果你需要任何更多的信息
謝謝:)
編輯
對不起,我應該澄清。我只是試圖編輯測試文件中的1行,而不是整個文本文件。
最終代碼:
的Java版本是您使用?如果你使用7,你可以使用Java.NIO來實現這一點。 – Makoto
_I我試圖寫入一個已經存在的文件,但它只是覆蓋它_,不清楚你的意思是什麼(代碼做它做什麼)。也許給一個簡短的例子,你期望什麼,你會得到什麼。 – PeterMmm
嘗試使用FileWriter writeFile = new FileWriter(fileLocation,true); –