在我的代码中,我在if else语句中创建了一个名为name
的字符串。但是,我需要在单独的语句中使用相同的字符串。这个新语句创建一个名为的新文件(无论name
中的字符串是什么)。
当我尝试在新语句中使用变量name
时,我收到错误,因为无法识别它。我该如何解决这个问题?
if (r == JFileChooser.APPROVE_OPTION) {
String name = chooser.getSelectedFile().getName();
System.out.println(name); //this is where I create string name
name = name.replace(".asm", ".hack");
}
新声明
try{
PrintWriter writer = new PrintWriter("file.hack", "UTF-8"); //instead of using "file.hack", I need the new file to be called name
writer.println(stringBuffer);
writer.close();
} catch (IOException e) {
// do something
}
Scanner input = new Scanner(new File("file.hack"));
while (input.hasNextLine())
{
System.out.println(input.nextLine());
}
答案 0 :(得分:-2)
首先定义变量,以便可以跨块访问变量范围。
String name = null;
if (r == JFileChooser.APPROVE_OPTION) {
name = chooser.getSelectedFile().getName();
}
try {
if (name != null) {
PrintWriter writer = new PrintWriter(name, "UTF-8");
...
}
} catch
首先定义作者并将try
移到if
。