Java 如何将文本文件中的行覆盖到另一个文件中的特定行,而不是附加这些行
我的代码将文本文件(A)中的行附加到另一个文件(B)中的特定行,如Java 如何将文本文件中的行覆盖到另一个文件中的特定行,而不是附加这些行,java,append,overwrite,Java,Append,Overwrite,我的代码将文本文件(A)中的行附加到另一个文件(B)中的特定行,如 我 上午 (以上行是固定的,不能覆盖) 学生(从文本文件中添加了新字符串) 现在(新字符串…) 如何将这些行覆盖到文件(B)中,而不是附加到文件(B)中 您可以使用java.io.RandomAccessFile访问文件(B)并将其写入所需位置。我想知道是否可以创建一个临时文件并将文件(B)中的固定行添加到此临时文件,在运行代码后,我可以删除文件B并将临时文件重命名为文件(B)的名称。现在我不确定是否能满足您的要求。你能举一个
如何将这些行覆盖到文件(B)中,而不是附加到文件(B)中 您可以使用
java.io.RandomAccessFile
访问文件(B)并将其写入所需位置。我想知道是否可以创建一个临时文件并将文件(B)中的固定行添加到此临时文件,在运行代码后,我可以删除文件B并将临时文件重命名为文件(B)的名称。现在我不确定是否能满足您的要求。你能举一个fileA和fileB的例子吗?正如我所说,我将文件B复制到临时文件,然后运行此函数并删除,然后将临时文件重命名为文件B的名称。
public class AddSingleInstance {
public void addinstances(String txtpath,String arffpath) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader("C:\\src\\text.txt"));
FileWriter fw = new FileWriter("C:\\src\\" + test.txt,true);
StringBuilder sb = new StringBuilder();
//String toWrite = "";
String line = null;
while ((line = reader.readLine())!= null){
// toWrite += line;
sb.append(line);
sb.append("\n");
}
reader.close();
fw.write(sb.toString());
fw.flush();
fw.close();
}
}