0

我想将我的文件保存在 java swing 应用程序中用户选择的位置。我正在动态生成word文件。此外,当我这样放

FileWriter _file = new FileWriter("C:/Calender"+.doc", true);

该文件以 Calender.doc 的名称直接在 c:/ drive 中生成。

但是,如果我要经过

jfilechooser.getSelectedFile().getAbsolutePath()

返回值"C:\Users\Shorav\Desktop"不会在此位置保存任何文件。

请帮忙; 如何保存文件。

代码是

chooser = new JFileChooser();
        chooser.setCurrentDirectory(new java.io.File("."));
        chooser.setDialogTitle("Select location to save the file");
        chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        chooser.setAcceptAllFileFilterUsed(false);

        if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
//          System.out.println("getCurrentDirectory(): "+ chooser.getCurrentDirectory());
//          System.out.println("getSelectedFile() : "+ chooser.getSelectedFile());
            System.out.println("Absolute Path : " +chooser.getSelectedFile().getAbsolutePath());
        } else {
            System.out.println("No Selection ");
        }

这将向用户询问保存文件的所需位置。

然后这是返回路径C:\Users\Shorav\Desktop。我想通过以下方式在这个位置生成word文件

 FileWriter _file = new FileWriter("C:/Calender"+.doc", true);

这是返回word文件。

4

1 回答 1

2

您将获得使用 选择的文件夹用户的位置jfilechooser.getSelectedFile。使用它来构造一个File对象并将其传递给FileWriter.

File selectedFile = jfilechooser.getSelectedFile();
FileWriter _file = new FileWriter(new File(selectedFile, "Calender.doc"), true);
于 2013-01-02T10:35:48.270 回答