我想将控制台行打印到txt文件。我希望在else语句中执行此操作,但它只写入文件最后一条记录。如何修复它?当我尝试缓冲读者它无法解决我的问题。感谢大家。有一个美好的一天。你给我的建议是哪种解决方案?将文件写入数组只写入数组中的最后一条记录
for(int iy=0;iy<arr.length;iy++){
if(arr[iy].contains("•") || arr[iy].contains("Contact") || arr[iy].contains("@") || arr[iy].contains("Activities and Societies") || arr[iy].contains("Page")){
}
else if(arr[iy].contains("Summary")){
//System.out.println(arr[iy]+"enes");
while(exit==false){
iy++;
if(arr[iy].contains("Experience")){
exit=true;
}
}
}
else if(arr[iy].contains("Skills") || arr[iy].contains("Languages")){
while(exit==false){
iy++;
if(arr[iy].contains("Education")){
exit=true;
}
}
}
else
{
System.out.println(arr[iy]);
try(PrintWriter bw = new PrintWriter(new FileWriter(FILENAME2))){
bw.write(arr[iy]);
//out.newLine();
bw.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
欢迎来到Stack Overflow!寻求调试帮助的问题(“为什么这个代码不工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:如何创建[mcve]。使用“编辑”链接来改善你的*问题* - 不要通过评论添加更多信息。谢谢! – GhostCat
除此之外:您希望我们花* *时间来帮助您解决问题。你应该尽可能简单。因此,请花1分钟时间来正确缩进/格式化所有源代码。你知道,*预览*窗口存在的原因 - 围绕编辑窗口的许多解释相同。 – GhostCat
最后:阅读关于* clean *的代码。这段代码难以阅读的次数比它应该多10倍(不仅因为懒惰的格式化,而且还因为结构过于复杂)。毫无疑问,您需要其他人来确定这个混乱中的问题。 – GhostCat