package ioTest.io3; /* * 获取指定目录下的文件夹和文件的File对象或是字符串名称。 * 也可以通过filter获取指定的文件夹或者指定类型的文件 * 这里面需要做一个总结,如何利用jdk的源码去理解不熟悉的方法的应用。 */ import java.io.File; import java.io.FileFilter; import java.io.FilenameFilter; public class FileDemo2 { public static void main(String[] args) { //listDemo(); listFilesDemo3(); } //获取当前目录下的所有文件夹和文件的名称 public static void listDemo() { File file=new File("F:\\"); String[] fileStrings=file.list(); for(String s:fileStrings) { System.out.println(s); } } //列出指定目录下指定文件类型的所有文件,返回String[] public static void listDemo2() { File file=new File("F:\\"); String[] fileStrings=file.list(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // TODO Auto-generated method stub return name.endsWith(".txt"); } }); for(String s:fileStrings) { System.out.println(s); } } //列出指定目录下所有文件,返回File[] public static void listFilesDemo() { File file=new File("F:\\"); File[] files=file.listFiles(); for(File f:files) { System.out.println(f); } } //列出指定目录下所有文件,返回File[] public static void listFilesDemo2() { File file=new File("F:\\"); //用匿名内部类实现过滤的操作。 File[] files=file.listFiles(new FileFilter() { @Override public boolean accept(File pathname) { // TODO Auto-generated method stub System.out.println("pathname---------:"+pathname); return pathname.toString().endsWith("txt"); } }); for(File f:files) { System.out.println(f); } } //列出指定目录下所有文件,返回File[] public static void listFilesDemo3() { File file=new File("F:\\"); //用匿名内部类实现过滤的操作。 File[] files=file.listFiles(new FilenameFilter() { //只有名称,没有盘符 @Override public boolean accept(File dir, String name) { System.out.println("name---------:"+name); return false; } }); for(File f:files) { System.out.println(f); } } //获取当前系统的所有有用盘符 public static void listRootsDemo() { File[] files=File.listRoots(); for(File f:files) { System.out.println(f); } } }
JAVA之IO技术-获取指定目录下的文件夹和文件的File对象或是字符串名称。,布布扣,bubuko.com
时间: 2024-10-05 04:40:54