【问题标题】:Save dialog doesn't add extension to file保存对话框不会向文件添加扩展名
【发布时间】:2013-05-02 16:50:42
【问题描述】:

我有一个按钮,可以打开一个保存对话框窗口,其中设置了默认扩展过滤器。当我保存文件时,它会在正确的文件夹中创建它,但最后不会添加扩展名。我将如何根据过滤器将扩展名添加到文件末尾? 这是我的保存文件按钮代码:

    btnNewButton = new JButton("Export File");
    btnNewButton.addActionListener (new ActionListener() {

        public void actionPerformed(ActionEvent arg0) {
            final JFileChooser finder = new JFileChooser();
            finder.setFileFilter(new FileNameExtensionFilter("Board Files", "boa"));
            int returnVal = finder.showSaveDialog(null);
            if (returnVal == javax.swing.JFileChooser.APPROVE_OPTION) {
                java.io.File file = finder.getSelectedFile();
                String file_name = file.toString();
                JOptionPane.showMessageDialog(null, file_name);
                WriteFile data = new WriteFile(file_name);              
                try {
                    data.writeToFile("Testing 1");
                } catch (IOException e) {
                    System.out.println(e.getMessage());
                }
            }
        }
    });

【问题讨论】:

标签: java swing jfilechooser savefiledialog


【解决方案1】:

如果用户尚未完成扩展,您可以自己添加。

String file_name = file.toString();
if (!file_name.endsWith(".boa"))
    file_name += ".boa";

【讨论】:

    【解决方案2】:

    过滤器仅用于过滤所选文件夹中的现有文件。 由于过滤器中可能有多个扩展名,因此只有您可以决定添加哪个扩展名。

    添加本身可以像上面的答案一样完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      • 2014-03-07
      • 2021-02-16
      • 1970-01-01
      相关资源
      最近更新 更多