Java在不同的行上写入相同的txt文件

Java在不同的行上写入相同的txt文件,java,file,lines,Java,File,Lines,我没有任何值得展示的代码,但我正在努力理解这个概念 我在两个类中打开一个文本文件,一个类保存一个用户名,如“user242”,另一个类保存一个数字“42421”。按照我的设置方式,它保存在不同的行中,例如: 第1行-用户242, 电话号码:2-421 但每次我再次运行这些类时,它们的格式都不一样: 行:1-用户242,用户114, 电话号码:2-4214225 相反,它会把事情搞得一团糟: 第1行-用户242, 电话号码:2-42421,用户114, 电话:3-4252 我想这是因为我使用了ne

我没有任何值得展示的代码,但我正在努力理解这个概念

我在两个类中打开一个文本文件,一个类保存一个用户名,如“user242”,另一个类保存一个数字“42421”。按照我的设置方式,它保存在不同的行中,例如:

第1行-用户242, 电话号码:2-421

但每次我再次运行这些类时,它们的格式都不一样: 行:1-用户242,用户114, 电话号码:2-4214225

相反,它会把事情搞得一团糟:

第1行-用户242, 电话号码:2-42421,用户114, 电话:3-4252

我想这是因为我使用了newLine();
这是我能解决的方法吗?它总是把一个变量写到顶行,把第二个变量写到第二行?

你不能把数据插入文件。不过,您可以使用
RandomAccessFile
覆盖数据。打开文件,读取内容,修改并写回


你也可以看看这个

如果你的应用程序是多线程的,这不是正确的方法。你没有发布代码,所以人们只能猜测发生了什么!如果只有一个色拉-在写入用户或编号后添加新行。如果它是多线程的,那么您需要一个sperate同步对象来记录和写入一个线程上的文件,这样它就不会出错。