java文件名没有就创建_java-JFileChooser-自定义文件名(创建新文件)

我可能在JFileChooser API中缺少明显的东西,但是当我尝试使用JFileChooser保存文件时,我只能选择要保存的现有文件,而不能输入新名称并保存到该文件.使用JFileChooser甚至可以实现,还是我应该使用其他API?

我有以下代码可以尝试执行我正在尝试的操作:

public static File getUserFile() {

final SaveFileChooser fc = new SaveFileChooser();

fc.setAcceptAllFileFilterUsed(false);

for(FileFilter ch : FileFilterUtils.getAllFilters()) {

fc.addChoosableFileFilter(ch);

}

int option = fc.showSaveDialog(JPad.getFrame());

if (option == JFileChooser.APPROVE_OPTION) {

return fc.getSelectedFile();

}

return null;

}

public static class SaveFileChooser extends JFileChooser {

private static final long serialVersionUID = -8175471295012368922L;

@Override

public void approveSelection() {

File f = getSelectedFile();

if(f.exists() && getDialogType() == SAVE_DIALOG){

int result = JOptionPane.showConfirmDialog(JPad.getFrame(), "The file exists, overwrite?", "Existing file", JOptionPane.YES_NO_CANCEL_OPTION);

switch(result){

case JOptionPane.YES_OPTION:

super.approveSelection();

return;

case JOptionPane.NO_OPTION:

return;

case JOptionPane.CLOSED_OPTION:

return;

case JOptionPane.CANCEL_OPTION:

cancelSelection();

return;

}

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值