Java:查找并替换一行
我看过很多关于这方面的帖子,但我无法做到这一点。我需要做一些像这样的事情。。比方说, 我有两个文件a.txt,b.txt。 我应该在a.txt中搜索字符串/行,并将其替换为b.txt的内容。 我认为它只是几行简单的代码。我尝试了下面的代码,但它不工作
File func = new File("a.txt");
BufferedReader br = new BufferedReader(new FileReader(func));
String line;
while ((line = br.readLine()) != null) {
if (line.matches("line to replace")) {
br = new BufferedReader(
new FileReader(func));
StringBuffer whole = new StringBuffer();
while ((line = br.readLine()) != null) {
whole.append(line.toString() + "\r\n");
}
whole.toString().replace("line to replace",
"b.txt content");
br.close();
FileWriter writer = new FileWriter(func);
writer.write(whole.toString());
writer.close();
break;
}
}
br.close();
请帮忙
# 1 楼答案
以下是解决此问题的技巧:
# 2 楼答案
嗯。。。也许可以避免创建BufferedReader类的实例,而只使用字符串类:
我刚刚分离了这个方法,以避免在同一代码块中读取文件两次。我希望它能帮助你,或者至少帮你满足你的要求。致以最良好的祝愿