package com.yyq; import java.io.*; //File 类 /* * 用来将文件或者文件夹封装成对象 * 方便对文件和文件夹的属性信息进行操作 * File对象可以作为参数传递给流的构造函数 * 流只能处理数据 * */ /* * File 类的常见方法: * 1.创建 * boolean createNewFile() * 在指定位置创建文件,如果该文件已经存在,则不创建,返回false * 和输出流不一样,输出流对象--创建文件,文件存在会覆盖。 * mkdir file.mkdir 创建一级目录 * mkdir file.mkdirs(创建多级目录)既可以创建目录,也可以创建文件 * 2.删除 * delete Boolean类型 删除失败,返回假 deleteonExit() void类型 告诉虚拟机,退出时删除指定文件 * 3.判断 * canExecute 判断能否执行 * exists() 判断文件是否存在 * * (//在判断文件对象是否是文件或者目录是,必须判断是否存在) * isFile() 判断是否是文件 * isDirectory 判断是否是目录 * isHidden() * isAbsolute 判断是否为绝对路径 * 4.获取信息 * getName() * getPath() * getParent() //返回的是绝对路径下的父目录,如果获取的是相对路径,则返回空 * 如果相对路径中有上一层目录,那么该目录就是返回结果。 * getAbsolutePath() * getLastModified(); * renameTo 有移动的效果 */ public class FileDemoTest { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub //consMethod(); //method_2(); method_5(); File dir = new File("E:\\eclipse - 副本\\IOtest"); // 实现过滤 ------匿名内部类 // list 是以accept 为准过滤文件的 // 文件过滤 ------ 过滤方法 String[] names = dir.list(new FilenameFilter() { public boolean accept(File dir,String name){ /*System.out.println(dir+"----"+name); if(name.endsWith(".txt")); return false;*/ return name.endsWith(".txt"); } }); System.out.println(names.length); for(String s :names){ System.out.println(s); } } //创建File对象 创建File对象的三种方式 public static void consMethod(){ // 将a.txt 封装成File对象,可以将已有的和未出现的文件或者文件夹封装成对象 File f = new File("a.txt"); // 路径不变,文件可以变化 File f1 = new File("D:\\abc","b.txt"); File d= new File("D:"+File.separator+"abc"); File f3 = new File(d,"c.txt"); System.out.println(f1); System.out.println(d); System.out.println(f3); } public static void method_1() throws Exception{ File f = new File("asssddb.txt"); // 告诉虚拟机,退出时删除了。。。 f.deleteOnExit(); sop("create:"+f.createNewFile()); sop("delete"+f.delete()); } public static void method_2() throws Exception{ File f = new File("a.txt"); sop("create:"+f.canExecute()+f.exists()); sop(f.getPath()); // 可以列出盘符: File[]arr = File.listRoots(); for(File r : arr){ System.out.println(r.getAbsolutePath()); } //调用list 方法的file对象,必须封装了目录,该目录还必须存在。 // 可以列出文件列表 File file = new File("c:\\Users"); String []names = file.list(); for(String s : names){ System.out.println(s); } } public static void sop(Object obj){ System.out.println(obj); } public static void method_3(){ // 创建文件夹 创建目录 // mkdir 只能创建一级目录 , File dir = new File("dd\\abc\\kk"); dir.mkdirs(); System.out.println(dir.getAbsolutePath()); System.out.println(dir.getParentFile()); } public static void method_5(){ File dir = new File("E:\\eclipse - 副本\\IOtest"); File[] files = dir.listFiles(); for(File f:files){ System.out.println(f.getName()+"::"+f.length()); } } }
package com.yyq; import java.io.*; //File 类 /* * 用来将文件或者文件夹封装成对象 * 方便对文件和文件夹的属性信息进行操作 * File对象可以作为参数传递给流的构造函数 * 流只能处理数据 * */ /* * File 类的常见方法: * 1.创建 * boolean createNewFile() * 在指定位置创建文件,如果该文件已经存在,则不创建,返回false * 和输出流不一样,输出流对象--创建文件,文件存在会覆盖。 * mkdir file.mkdir 创建一级目录 * mkdir file.mkdirs(创建多级目录)既可以创建目录,也可以创建文件 * 2.删除 * delete Boolean类型 删除失败,返回假 deleteonExit() void类型 告诉虚拟机,退出时删除指定文件 * 3.判断 * canExecute 判断能否执行 * exists() 判断文件是否存在 * * (//在判断文件对象是否是文件或者目录是,必须判断是否存在) * isFile() 判断是否是文件 * isDirectory 判断是否是目录 * isHidden() * isAbsolute 判断是否为绝对路径 * 4.获取信息 * getName() * getPath() * getParent() //返回的是绝对路径下的父目录,如果获取的是相对路径,则返回空 * 如果相对路径中有上一层目录,那么该目录就是返回结果。 * getAbsolutePath() * getLastModified(); * renameTo 有移动的效果 */ public class FileDemoTest { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub //consMethod(); //method_2(); method_5(); File dir = new File("E:\\eclipse - 副本\\IOtest"); // 实现过滤 ------匿名内部类 // list 是以accept 为准过滤文件的 // 文件过滤 ------ 过滤方法 String[] names = dir.list(new FilenameFilter() { public boolean accept(File dir,String name){ /*System.out.println(dir+"----"+name); if(name.endsWith(".txt")); return false;*/ return name.endsWith(".txt"); } }); System.out.println(names.length); for(String s :names){ System.out.println(s); } } //创建File对象 创建File对象的三种方式 public static void consMethod(){ // 将a.txt 封装成File对象,可以将已有的和未出现的文件或者文件夹封装成对象 File f = new File("a.txt"); // 路径不变,文件可以变化 File f1 = new File("D:\\abc","b.txt"); File d= new File("D:"+File.separator+"abc"); File f3 = new File(d,"c.txt"); System.out.println(f1); System.out.println(d); System.out.println(f3); } public static void method_1() throws Exception{ File f = new File("asssddb.txt"); // 告诉虚拟机,退出时删除了。。。 f.deleteOnExit(); sop("create:"+f.createNewFile()); sop("delete"+f.delete()); } public static void method_2() throws Exception{ File f = new File("a.txt"); sop("create:"+f.canExecute()+f.exists()); sop(f.getPath()); // 可以列出盘符: File[]arr = File.listRoots(); for(File r : arr){ System.out.println(r.getAbsolutePath()); } //调用list 方法的file对象,必须封装了目录,该目录还必须存在。 // 可以列出文件列表 File file = new File("c:\\Users"); String []names = file.list(); for(String s : names){ System.out.println(s); } } public static void sop(Object obj){ System.out.println(obj); } public static void method_3(){ // 创建文件夹 创建目录 // mkdir 只能创建一级目录 , File dir = new File("dd\\abc\\kk"); dir.mkdirs(); System.out.println(dir.getAbsolutePath()); System.out.println(dir.getParentFile()); } public static void method_5(){ File dir = new File("E:\\eclipse - 副本\\IOtest"); File[] files = dir.listFiles(); for(File f:files){ System.out.println(f.getName()+"::"+f.length()); } } }