2

我想打开一个文件,然后逐行读取。在某些行中,我想将一个字符串附加到这一行。这可能吗?

我有一个用于打开文件并读取它的代码,如下所示:

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) {
    // ...
}

但是如何将字符串附加到当前行并将其写入文件?

4

3 回答 3

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);

    }
} 

我认为您无法同时读取和写入同一个文件,因为它拥有读/写锁。

谢谢

于 2013-05-04T09:25:44.187 回答
0

创建新文件并使用所需的修改继续写入该文件(当您逐行读取其他文件时)。然后删除现有文件,并为新创建的文件命名为已删除文件的名称。这就是我将如何处理它。

这是确认此方法以及其他替代方法的链接。

在 Java 中修改 .txt 文件

于 2013-05-04T09:24:41.507 回答
0
  1. List<String>如果需要,readLines读取行并更改一些字符串(行)
  2. 创建新的临时文件
  3. 通过追加写入行(或逐行)到它
  4. 删除旧文件
  5. 改名
于 2013-05-04T09:29:26.403 回答