用Java在文件中写第x行

时间:2011-05-29 07:07:55

标签: java file io

在Java中,假设我有一个包含n行的文本文件,是否可以只编写和替换行x?或者我是否重写所有行以编辑任何行?

似乎我使用RandomAccess File读取x-1行,然后调用

f.writeChars(str+"\n");
这会有用吗?但它也不会删除现有的第x行..

2 个答案:

答案 0 :(得分:1)

请参阅RandomAccessFile

它不会很漂亮,因为如果你开始写一个给定的位置你会覆盖那里的任何东西,所以你可能必须在那之后保存并重写所有内容(也就是说,你不能只是“在那里插入“文字”。

重新:您的修改 它将删除现有的行,可能会更多(或更少),具体取决于行的长度。

答案 1 :(得分:0)

如果您没有更改行长度,则只需覆盖原始数据即可。

如果您需要更改行长度,或在文件中间添加(或删除)行,则需要重写从该点开始直到结束的所有数据。