我正在尝试制作一个简单的程序,将用户在 Swing 表单上的输入保存到 .CSV 文件中。我让它工作到第一次写入的地方。
如果我退出或输入第二组值,然后单击“保存”,则文件中的前一个字符串将被覆盖。
try {
PrintWriter pw = new PrintWriter(new File("customer.csv"));
StringBuilder sb = new StringBuilder();
sb.append(merch);
sb.append(',');
sb.append(cont);
sb.append(',');
sb.append(mail);
sb.append(',');
sb.append(cphone);
sb.append('\n');
pw.write(sb.toString());
pw.flush();
pw.close();
} catch (FileNotFoundException e1) {
JOptionPane.showMessageDialog(frame, "File Not Located");
e1.printStackTrace();
我尝试添加 'sb.append('\n');'到最后以为这样就能解决问题,但事实并非如此。
最佳答案
您需要以附加模式打开文件:
PrintWriter pw = new PrintWriter(new FileWriter("customer.csv", true));
关于java - 写入 CSV 文件时,之前的字符串将被覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36556173/