如何使用jfilechooser生成唯一的文件名?

时间:2016-03-01 16:13:52

标签: java swing file jfilechooser

我正在使用jfilechooser生成新文件,但用户要求是比较生成的文件是否已存在于驱动器中。如果它已经存在则生成新文件名,如果它不存在则生成该文件。

所以我提供的代码用于在任何驱动器位置生成文件。

public void actionPerformed(ActionEvent e) {
        JFileChooser dialog = new JFileChooser();
        int dialogResult = dialog.showSaveDialog(null);
        if (dialogResult==JFileChooser.APPROVE_OPTION){
            String filePath = dialog.getSelectedFile().getPath();
            try {
                Document document = new Document();
                PdfWriter.getInstance(document, new FileOutputStream(filePath));
                document.open();
                document.add(new Paragraph("File with path " + filePath));
                document.close();
            }
            catch(DocumentException de) {
                de.printStackTrace();
            } catch (IOException ioe) {
                ioe.printStackTrace();
            }
        }

1 个答案:

答案 0 :(得分:0)

对文件名使用一些数字后缀。例如。 fileName01fileName02等。如果已存在具有此名称的文件,则可以轻松增加数字后缀。

此外,您可以使用File#createTempFile(String prefix, String suffix)方法生成此类文件名。