Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java等待文件选择器_Java_Swing - Fatal编程技术网

Java等待文件选择器

Java等待文件选择器,java,swing,Java,Swing,有没有一种方法可以在有一个带有文件选择器的JFrame时暂停我的主函数。用户应该选择他的目录,然后动态创建一个文件 这是代码的一部分 DirectoryChooser selectPath = new DirectoryChooser(); //Filechooser for Path String sourcePath = selectPath.getSourcePath(); //Here the programm should tak

有没有一种方法可以在有一个带有文件选择器的JFrame时暂停我的主函数。用户应该选择他的目录,然后动态创建一个文件

这是代码的一部分

        DirectoryChooser selectPath = new DirectoryChooser();   //Filechooser for Path 
        String sourcePath = selectPath.getSourcePath();

        //Here the programm should take a break to wait for the sourcePath

        try 
        {                                                                               
            FileWriter fw = new FileWriter(sourcePath+"/Result.txt");   //Create File
            BufferedWriter ausgabe = new BufferedWriter(fw);

             //*** More code ***

filechooser对话框是在sperate类中创建的,您可以使用
getSourcePath()
方法获取路径字符串您必须调用
showDialog()
方法(或调用相应的DirectoryChooser方法)才能向用户显示该对话框。如果您引用的是JavaFX库中的DirectoryChooser类,那么可以调用
showDialog(Window owner)
将对话框块IO也添加到owner窗口。

简单的方法是这样做。仅当选择文件时,才会执行代码

javax.swing.JFileChooser chooser = new javax.swing.JFileChooser();
chooser.showOpenDialog(null);
File yourFile = chooser.getSelectedFile();
if(yourFile!=null)  //Check if user selected a file
{
    //write your codes here
}

你不是在某个地方打开它吗?你需要吗?谢谢@JackWhiteIII!帮了我很多忙。非常好而且容易解决