单个文件的选择
FileChooser fileChooser = new FileChooser();
//设置标题
fileChooser.setTitle("单选文件");
//设置打开初始地址
fileChooser.setInitialDirectory(new File("D:" + File.separator + "test"));
//过滤选择文件类型
fileChooser.getExtensionFilters().addAll(new ExtensionFilter("图片类型","*.jpg","*.png"),
new ExtensionFilter("文本类型","*.txt"));
//显示选择窗口,获取选中文件
File file = fileChooser.showOpenDialog(new Stage());
//避免空指针异常
if(file == null){
return;
}
System.out.println(file.getAbsolutePath());
多个文件的选择
FileChooser fileChooser = new FileChooser();
//设置标题
fileChooser.setTitle("单选文件");
//设置打开初始地址
fileChooser.setInitialDirectory(new File("D:" + File.separator + "test"));
//过滤选择文件类型
fileChooser.getExtensionFilters().addAll(new ExtensionFilter("图片类型","*.jpg","*.png"),
new ExtensionFilter("文本类型","*.txt"));
//显示选择窗口,获取选中文件
List<File> list = fileChooser.showOpenMultipleDialog(new Stage());
if(list == null){
return;
}
//集合的forEach方法 传入一个Consumer接口 重写Consumer接口的accept(T t)方法
//forEach方法使用增强for循环使集合的每个元素执行accept方法
list.forEach(new Consumer<File>() {
@Override
public void accept(File t) {
System.out.println(t.getAbsolutePath());
}
});
文件夹的选择
DirectoryChooser dc = new DirectoryChooser();
dc.setTitle("选择一个文件夹");
dc.setInitialDirectory(new File("D:" + File.separator));
File file = dc.showDialog(new Stage());
if(file != null){
File[] files = file.listFiles();
for(File f : files){
System.out.println(f.getAbsolutePath());
}
}
学习至B站up主Aimls