文件选择器(FileChooser)
单选文件
FileChooser chooser = new FileChooser();chooser.setTitle("请选择要打开的文件");//不可设置chooser.setInitialDirectory(new File("E:\\"));//打开D盘,不设置的话,默认进入首页//筛选文件类型chooser.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("图片类型","*.jpg","*.png"),new FileChooser.ExtensionFilter("文本类型","*.txt","*.doc"),new FileChooser.ExtensionFilter("所有类型","*.*"));File file = chooser.showOpenDialog(new Stage());//如果不选文件直接关闭窗口的话,返回值为空if(file != null){System.out.println(file.getAbsolutePath());//获得要选中的文件的地址}
- 筛选文件类型的图

多选文件
FileChooser chooser = new FileChooser();List<File> list = chooser.showOpenMultipleDialog(new Stage());//多选文件//如果不选文件直接关闭窗口的话,返回值为空if(list != null){for (File file:list){System.out.println(file.getAbsolutePath());}}
保存文件
FileChooser chooser = new FileChooser();chooser.setTitle("请选择保存的地址");//不可设置chooser.setInitialDirectory(new File("E:\\"));//打开E盘chooser.setInitialFileName("我要保存这个txt文件");//要保存的文件的名字chooser.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("文本类型","*.txt"));File file = chooser.showSaveDialog(new Stage());//多选文件//如果不选文件直接关闭窗口的话,返回值为空if(file != null){System.out.println(file.getAbsolutePath());//接下来我们也可以对这个已经创建的文件进行写入}

文件夹选择器
DirectoryChooser chooser = new DirectoryChooser();chooser.setTitle("文件夹选择器");chooser.setInitialDirectory(new File("E:\\"));//打开E盘File file = chooser.showDialog(new Stage());if (file != null){File[] list = file.listFiles();for (File f :list){System.out.println(f.getName());}}
仅打开资源管理器
方案一(推荐)
Desktop desktop = Desktop.getDesktop();try {desktop.open(file);} catch (IOException e) {throw new RuntimeException(e);}
注:仅当打开的是文件夹时,才会打开资源管理器,否则会直接打开文件。
方案二 仅适用Window
不指定位置
Runtime.getRuntime().exec("explorer.exe");
指定地址,如果指定的文件,会选定文件
Runtime.getRuntime().exec("explorer.exe /select," + "C:\\Users\\Administrator\\Desktop");
