数据在电脑中都是以文件的形式体现的。我们使用IO读写数据,就是对文件进行读写 Java为了让我们描述文件或者目录 就给我们提供了一个类 File File 文件和目录路径名的抽象表示形式。 File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。 File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。 File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。 路径: 绝对路径:带有盘符号的详细路径 相对路径:不带有盘符号的路径 相对路径,在工程的根目录
创建新的文件 返回值表示文件创建成功,如果文件已经存在则返回false
boolean b = file.createNewFile(); System.out.println(b);创建单级目录,如果目录已经存在,则返回false
File file = new File("E:\\abc"); //目录/文件夹 文件 boolean b = file.mkdir();删除文件或目录
File file = new File("b.txt"); //注意删除,不经过回收站,返回值代表是否删除成功 boolean b = file.delete(); System.out.println(b); File file1 = new File("E:\\abc"); //在删除目录时,只能删除空目录,非空目录直接删除不了 file1.delete();重名文件,返回值是否重命名成功
File file = new File("bbb.txt"); File file1 = new File("E:\\eee.txt"); //renameTo()方法有两层作用 //1.重命名:当你传入的新文件和旧文件的路径保持一致,是重命名 //2.剪切:当你传入的新文件和旧文件的路径不一致,就会发生剪切现象 boolean b = file.renameTo(file1);list(); 获取此目录下所有的文件或目录 名称的数组
String[] list = file.list(); for (String s : list) { //System.out.println(file+s); File file1 = new File(file +"\\"+s); if(file1.isFile()&&file1.getName().endsWith(".jpg")){ System.out.println(file1.getName()); } }文件过滤器
File file = new File("E:\\jieya\\img\\"); //获取此目录下,符合条件的文件后文件夹放到数组中 File[] files = file.listFiles(new FilenameFilter() { //过滤的方法 @Override public boolean accept(File dir, String name) { //获取此目录下所有的文件名是以.jpg结尾的文件名 //System.out.println(dir);//父路径的File 形式 //System.out.println(name);//文件名字符串形式 File file1 = new File(dir, name); if(file1.isFile()&&file1.getName().endsWith(".jpg")){ return true; }else{ return false; } } }); //System.out.println(Arrays.toString(files)); for (File file1 : files) { System.out.println(file1); } File[] files = file.listFiles(new FileFilter() { @Override public boolean accept(File pathname) { //System.out.println(pathname); if(pathname.isFile()&&pathname.getName().endsWith(".jpg")){ return true; }else{ return false; } } });