有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java PrintWriter:随时间写入同一文件

我正在制作一个刽子手游戏,目标是保存不同玩家的数据,比如他们的名字、玩过的游戏和胜利。我有这个部分的工作,但每次我运行程序,它删除以前的数据,并取代它

public static void writeStats(File file,String name, int won, int games) {
    try {
        PrintWriter pw = new PrintWriter(file);
        pw.println("Player\tWon\tTotal");
        pw.println("-----------------------------");
        pw.println(name+"\t"+won+"\t"+games);
        pw.close();
    } //end try
    catch (IOException e) {
        System.out.println("Failed to write file!");
    } //end catch
} //end method

共 (1) 个答案

  1. # 1 楼答案

    您可以传递PrintWritera Writer,并使用FileWriter,它有一个附加标志,允许您将值附加到文件中

    首先看一下^{}

    try (PrintWriter ps = new PrintWriter(new FileWriter(file, true))) {
        //...
    } catch (IOException exp) {
        System.out.println("Failed to write file!");
        exp.printStackTrace();
    }