当前位置: 首页 > 面试题库 >

File Writer覆盖先前的Java写操作

鲁宏爽
2023-03-14
问题内容
try {
                File file = new File(filePath+"usedcommands.txt");
                if (!file.exists()) {
                    file.createNewFile();
                }
                FileWriter fw = new FileWriter(file.getAbsoluteFile());
                BufferedWriter bw = new BufferedWriter(fw);
                bw.write(input+"\n");
                bw.close();
            } catch(Exception e) { System.out.println("can't write to usedcommands.txt..."); }

我正在写入txt文件,但是每次我执行写入过程时,它都会覆盖那里已经写入的内容。如何更改代码,使程序的这一部分不会覆盖已经存在的内容?


问题答案:

将true作为第二个参数传递给FileWriter以打开“附加”模式。

FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);


 类似资料:
  • 我有一个方法应该用新内容覆盖当前文件,但是FileWriter()只是附加新内容,而不是覆盖旧内容。 这是我的FileWriter的设置方式 这是保存方法 当我运行此方法时会出现问题,它没有覆盖文件,而是将新内容附加到文件中。 我想要的: 发生了什么:

  • 问题内容: 我正在写一个FTP下载器。代码的一部分是这样的: 我正在调用函数进程来处理回调: 输出是这样的: 但我希望它打印此行,下次重新打印/刷新它,因此它只会显示一次,并且我会看到下载进度。 怎么做到呢? 问题答案: 这是Python 3.x的代码: 该关键字是什么做的工作在这里- 在默认情况下,在一个换行符(结束)字符,但可以使用不同的字符串替换。在这种情况下,用回车符结束该行,而是将光标返

  • 问题内容: 我正在将一个类似于“ John.Doe.100.Newbie- David.Miller.250.Veteran-”的字符串传递给SplitDatabase函数,该函数将适当地拆分字符串并将值分配给UserDataEntry对象。然后,将UserDataEntry对象推入应该存储所有用户数据的全局UserData数组中。 但是由于某种原因,UserData.push(UserDataE

  • 本质上,我编码的是一个益智游戏。 我认为这是因为前面设置的阻止了值的工作。 我插入了一些值来检查方法是否正在运行,它运行了,但是当用户单击“开始游戏”时,图像仍然拒绝出现在按钮上。

  • 问题内容: with open(“games.txt”, “w”) as text_file: print(driver.current_url) text_file.write(driver.current_url + “\n”) 我现在正在使用此代码,但是当它写入文件时,它将覆盖旧内容。我如何能简单地添加它而不删除已经存在的内容。 问题答案: 而不是使用(附加)功能模式:

  • 问题内容: 这个问题来自一个作业。我必须在创建循环链接列表的类中重写toString()方法,而实际上我的toString()方法效果很好,它通过了我所有的测试。因此,我的项目是自动分级的,显然它不是100%赞成我的方法。所以我的问题是:有没有更好的方法来编写此toString()方法,这样会更有效? 如果我需要详细说明类结构,以便更有意义,请告诉我。 问题答案: 使用StringBuilder。