【发布时间】:2016-09-01 05:51:46
【问题描述】:
我正在尝试读取一个文件,修改一个小点后写入几个文件。
我的代码在编写第一个文件时工作,但其他文件是空文件。 :(
我认为当我使用 bufferedwriter 和 filewriter 时存在问题,但我遵循了使用 stackoverflow 中的 flush 的建议,但找不到问题所在。
我的代码有什么问题?
FileReader fr = new FileReader(FileDir);
BufferedReader br = new BufferedReader(fr);
for (String mc: matchedContents){
FileWriter fw = new FileWriter(saveFileDir+String.valueOf(matchedContents.indexOf(mc)+1)+".xml", false);
BufferedWriter bw = new BufferedWriter(fw);
while ((s = br.readLine())!=null){
// check if s has matched contents
if (s.contains(mc)){
String replacedString="";
if (mc.contains("NV"))
replacedString = s.replace(mc, "NV("+anyItem(edgeNames)+")");
else if (mc.contains("AW"))
replacedString = s.replace(mc, "AW("+anyItem(edgeNames)+")");
bw.write(replacedString);
bw.newLine();
}
else {
bw.write(s);
bw.newLine();
}
}
System.out.println(mc+" end");
bw.flush();
bw.close();
fw.close();
}
br.close();
fr.close();
【问题讨论】:
-
尝试使用那个神奇的东西,叫做调试器。
标签: java