如果某个条件成立,如何创建一个文件,并在以后的程序中使用它(在相同的条件下),使用Java?
我只想在条件c为真时创建一个文件,如果相同的条件为真,我想稍后在循环中更新这个文件。但是,如果我在if语句中创建一个文件,那么在if之外就无法访问它。例如,如果我创建一个文件:如果某个条件成立,如何创建一个文件,并在以后的程序中使用它(在相同的条件下),使用Java?,java,file,Java,File,我只想在条件c为真时创建一个文件,如果相同的条件为真,我想稍后在循环中更新这个文件。但是,如果我在if语句中创建一个文件,那么在if之外就无法访问它。例如,如果我创建一个文件: if(c){ Writer outputFile = new BufferedWriter(new OutputStreamWriter( new FileOutputStream("path_2_output_file"), "UTF-8")); } //... 然后在程序的后面尝试写入此
if(c){
Writer outputFile = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("path_2_output_file"), "UTF-8"));
}
//...
然后在程序的后面尝试写入此文件:
String l = "";
while ((l = someInputBuffer.readLine()) != null) {
if(c){
outputFile.write("new-"+l+"\n);
}
}
但是outputFile不可访问/不可用,因为它是在if语句中声明的。我应该如何解决这个问题?您所要做的就是将Writer指针保持在循环之外:
Writer w = null;
if(c) w= new Writer...;
loop{
//Do Stuff
if(w!=null)w.append("info");
}