我有一个数据库txt文件,我想操纵某些行。例如:我想删除第44行中的数据集,或编辑第22行中的数据集。 我尝试过FileWriter和RandomAccessFile,它们似乎都不适合做这项工作。 FileWriter只能将文本附加到文件中,并且不使用指针来浏览数据库。 RandomAccessFile似乎对这项工作很有帮助,但我一直遇到这个问题,当我在我的txt文件中使用RAF的方法时,文件编码中断了,一旦我打开它,我只能看到奇怪的Unicode符号。 是否可以在不破坏编码的情况下使用RAF类,或者是否有另一个类来操作特定字节位置或特定行的文件。 提前谢谢!
RAF的代码:
public static void main(String[] args)
{
try
{
RandomAccessFile raf = new RandomAccessFile("test123.txt", "rw");
raf.seek(0);
raf.writeChars("First line of text" + System.lineSeparator());
raf.writeChars("Second line of text");
raf.close();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
输出文件是: 我不知道其他人
开始使用