如何使 BufferedWriter 不覆盖文本文件

ddj*_*jh5 1 java bufferedwriter

我目前正在制作一个应用程序,用户可以在其中添加多个帐户。登录信息存储在文本文件中。我需要一种方法让用户添加新帐户,而 BufferedWriter 不会覆盖其他帐户的信息。有什么建议么?

package mainFiles.fileManagers;

import java.io.*; 


public class NewTXT {


 public static void nFile( String a , String b ) throws IOException {

     File f = new File("mainFiles\\storage\\accountinfo.txt");
     FileWriter writer = new  FileWriter("mainFiles\\storage\\accountinfo.txt"); 
     BufferedWriter bWriter = new BufferedWriter(writer); 



     f.createNewFile(); 
     f.canWrite(); 
     bWriter.newLine(); 
     bWriter.write(a + "?" + b );
     bWriter.newLine();
     bWriter.close(); 

 }

}
Run Code Online (Sandbox Code Playgroud)

小智 5

没有什么问题BufferedWriter。您必须构建FileWriter附加模式:

FileWriter writer = new FileWriter("mainFiles\\storage\\accountinfo.txt", true);

检查 FileWriter 文档: https://docs.oracle.com/javase/7/docs/api/java/io/FileWriter.html#FileWriter(java.lang.String,%20boolean)