我想打开一个文件,然后逐行阅读。在某些行中,我想要将一个字符串追加到此行。这可能吗?
我有一个打开文件的代码,并按如下方式阅读:
File file = new File("MyFile.txt");
BufferedReader bufRdr = new BufferedReader(new FileReader(file));
String line = null;
try {
while((line = bufRdr.readLine()) != null)
{
// read line by line and append some string to the line
}
} catch (IOException e) {
// ...
}
但是如何将字符串附加到当前行并将其写入文件?
答案 0 :(得分:1)
当您逐行阅读文件时。将文本追加到行并将其写入其他文件。比如说具有不同名称的文件,稍后您可以重命名该文件。
就像
一样try {
while((line = bufRdr.readLine()) != null)
{
// read line by line and append some string to the line
//pseudo code
newline = line + "yourtext";
outputstreamtootherfile.write(newline);
}
}
我认为你无法同时读写同一个文件,因为它保存了读/写锁。
由于
答案 1 :(得分:0)
创建新文件并继续写入此文件(当您逐行读取其他文件时),并进行所需的修改。然后删除现有文件并为新创建的文件提供已删除文件的名称。这就是我接近它的方式。
以下链接确认了这种方法以及其他替代方案。
答案 2 :(得分:0)