Java I/O:如何追加到已存在的文本文件

发布于 2024-08-30 18:10:05 字数 140 浏览 11 评论 0原文

您好,我在写入或附加文件时没有问题,唯一的问题是,一旦我退出程序然后再次运行它,它会创建一个新文件覆盖我的原始文件。这是一个问题,因为我正在使用文本文件来保持运行计数。

有没有办法将已经创建的文本文件作为对象然后附加到它?

提前致谢。

Hi I am having no problem writing to or appending to a file, the only problem is that as soon as I quit the program and then run it again, it creates a new file overwriting my original file. This is a problem, as I am using the text file to keep a running tally.

Is there a way to get an already created text file as an object and then append to it?

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

双手揣兜 2024-09-06 18:10:05

通常,比 FileWriter (已经建议)更好的是使用 FileOutputStream,它也(如 FileWriter )在其构造函数之一中有一个 append 参数,并且它(与 FileWriter 不同)不会默默地采用默认的字符集编码(在我看来,这种做法有点不好)。

来自 FileWriter 文档:

书写便利班
字符文件。的构造函数
这个类假设默认
字符编码和默认值
字节缓冲区大小是可以接受的。到
自己指定这些值,
在 a 上构造一个 OutputStreamWriter
文件输出流。

Usually, better than FileWriter (already suggested) is to use FileOutputStream, which also (like FileWriter ) has an append parameter in one of its constructors, and which (unlike FileWriter), does not silently assume the default charset encoding (slightly bad practice IMO).

From the FileWriter doc:

Convenience class for writing
character files. The constructors of
this class assume that the default
character encoding and the default
byte-buffer size are acceptable. To
specify these values yourself,
construct an OutputStreamWriter on a
FileOutputStream.

窝囊感情。 2024-09-06 18:10:05

FileWriter 有一个构造函数,允许您使用布尔值设置附加。
javadoc

There is a constructor for FileWriter which allows you to set appending with a boolean.
javadoc

等风来 2024-09-06 18:10:05

看一下 java.io.FileWriter。将 append 设置为 true 应该可以解决问题。

Take a look at java.io.FileWriter. Setting append to true should do the trick.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文