使用 DirectoryChooser 创建并保存到文本文件

create and save to a text file using DirectoryChooser

我想用我输入的名称创建一个文本文件并将其保存到某个位置。我可以使用 DirectoryChooser 选择位置,但如何输入文件名。 DirectoryChooser 中是否有用于此的选项。

这是我的代码

public void directoryChooser() {
        DirectoryChooser chooser = new DirectoryChooser();
        chooser.setTitle("Choose location To Save Report"):
        File selectedDirectory = null;
        while(selectedDirectory == null){
        selectedDirectory = chooser.showDialog(null);
        }

        File file = new File(selectedDirectory + "/" + "Report.txt");
        PrintWriter outFile = null;
        try {
            outFile = new PrintWriter(file);
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        for(int i = 0; i<table.getItems().size(); i++){
            outFile.println(table.getItems().get(i).toString());
        }
        outFile.close();
    }

所以我想让它给我输入要保存的文件名的选项。

例如

A DirectoryChooser 让您选择一个目录。如果要选择文件(新文件或现有文件),请使用 FileChooser.

public void directoryChooser() {
    FileChooser chooser = new FileChooser();
    chooser.setTitle("Choose location To Save Report"):
    File selectedFile = null;
    while(selectedFile== null){
        selectedFile = chooser.showSaveDialog(null);
    }

    File file = new File(selectedFile);
    PrintWriter outFile = null;
    try {
        outFile = new PrintWriter(file);
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    for(int i = 0; i<table.getItems().size(); i++){
        outFile.println(table.getItems().get(i).toString());
    }
    outFile.close();
}