我试图陷入用户输入正确的文件名,除非他按下取消或X.但是,如果他没有取消输入我的程序会抛出一个NullPointerException 。爪哇秋千:不能陷入用户输入正确的文件名
public void openSaveAsDirectory() {
JDialog dialog = new JDialog();
dialog.setTitle("Save file as");
String name = JOptionPane.showInputDialog(adTable, "Please type a name for your file");
if(name != null && !name.isEmpty()) {
File fileName = new File(SAVE_LOCATION + FILE_SEPERATOR + name + FILE_SUFFIX);
book.saveUser(fileName);
}
while(name.isEmpty()) {
name = JOptionPane.showInputDialog(adTable, "Please type a name for your file");
}
}
那么,如果他们取消您的输入对话框,'name'将为空。你做'while(name.isEmpty()){'。 'name'可以为null。 – nbokmans
可能的重复[什么是NullPointerException,以及如何解决它?](https://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix-it ) – nbokmans
只是好奇:你为什么使用JOptionPane与JFileChooser? – ControlAltDel