繁体   English   中英

Java-Swing:无法诱使用户键入正确的文件名

[英]Java-Swing: Can't trap user into typing a correct filename

我正在尝试诱使用户键入正确的文件名,除非他按Cancel或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");
    }
}

根据您的评论,这是一个更新的版本,它要求输入,只要它为空但在用户单击“取消”按钮时停止。

String name;
do {
    name = JOptionPane.showInputDialog(null, "Please type a name for your file");
    if(name == null) { //user hit cancel, break the loop
        break;
    }
} while(name.isEmpty());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM