File类_获取功能的方法:
案例:
package File_Lei; import java.io.File; /* 获取功能的方法: public String getAbsolutePath() :返回此抽象路径名的绝对路径名字符串。 public String getPath() :将此抽象路径名转换为一个路径名字符串。 public String getName() :返回由此抽象路径名表示的文件或目录的名称。 public long length() :返回由此抽象路径名表示的文件的长度。 */ public class FileGet { public static void main(String[] args) { File f1 = new File("G:\\Demo01\\src\\File_Lei\\FileGet.java"); System.out.println("文件绝对路径:" + f1.getAbsolutePath()); System.out.println("文件构造路径:" + f1.getPath()); System.out.println("文件名称:" + f1.getName()); System.out.println("文件长度:" + f1.length() + "字节"); System.out.println("======================================================"); File f2 = new File("G:\\Demo01"); System.out.println("目录绝对路径:" + f2.getAbsolutePath()); System.out.println("目录构造路径:" + f2.getPath()); System.out.println("目录名称:" + f2.getName()); System.out.println("目录长度:" + f2.length() + "字节"); } }文件绝对路径:G:\Demo01\src\File_Lei\FileGet.java
文件构造路径:G:\Demo01\src\File_Lei\FileGet.java
文件名称:FileGet.java
文件长度:1312字节
======================================================
目录绝对路径:G:\Demo01
目录构造路径:G:\Demo01
目录名称:Demo01
目录长度:4096字节
File类_判断功能的方法:
案例
package File_Lei; import java.io.File; /* 判断功能方法: public boolean exists() :测试此抽象路径名表示的文件或目录是否存在。 public boolean isDirectory() :测试此抽象路径名表示的文件是否是一个目录。 public boolean isFile() :测试此抽象路径名表示的文件是否是一个标准文件。 */ public class FileIs { public static void main(String[] args) { File f1 = new File("G:\\Demo01\\src\\File_Lei\\FileIs.java"); File f2 = new File("G:\\Demo01"); //判断是否存在 System.out.println("G:\\Demo01\\src\\File_Lei\\FileIs.java 是否存在:" + f1.exists()); System.out.println("G:\\Demo01 是否存在:" + f2.exists()); //判断是文件还是目录 System.out.println("G:\\Demo01 是否为目录:" + f2.isDirectory()); System.out.println("G:\\Demo01 是否为文件:" + f2.isFile()); } }
G:\Demo01\src\File_Lei\FileIs.java 是否存在:true
G:\Demo01 是否存在:true
G:\Demo01 是否为目录:true
G:\Demo01 是否为文件:false
File类_创建/删除功能的方法:
案例:
package File_Lei; import java.io.File; import java.io.IOException; /* public boolean createNewFile() :当且仅当具有该名称的文件尚未存在时,创建一个新的空文件。 public boolean delete() :删除此抽象路径名表示的文件或目录。 public boolean mkdir() :创建此抽象路径名指定的目录。 public boolean mkdirs() :创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。 */ public class FileCreateDelete { public static void main(String[] args) throws IOException { show01();//创建文件 show02();//创建文件夹 show03();//删除由此File表示的文件或者目录 } /* public boolean delete() :删除此抽象路径名表示的文件或目录。 此方法,可以删除构造方法路径中给出的文件/文件夹 返回值:布尔值 true:文件/文件夹删除成功,返回true false:文件夹中有内容,不会删除返回false,构造方法中路径不存在false 注意: delete方法是直接在硬盘删除文件/文件夹,不走回收站,删除要谨慎 */ private static void show03() { File f1 = new File("G:\\Demo01\\src\\File_Lei\\新建文件夹\\123"); boolean delete01 = f1.delete();//删除文件夹 System.out.println("delete01:" + delete01); File f2 = new File("G:\\Demo01\\src\\File_Lei\\123.txt"); boolean delete02 = f2.delete();//删除文件 System.out.println("delete02:" + delete02); } /* public boolean mkdir() :创建单级空文件夹 public boolean mkdirs() :既可以创建单级空文件夹,也可以创建多级文件夹 返回值:布尔值 true:文件夹不存在,创建文件,返回true false:文件夹存在,不会创建,返回false,构造方法中给出的路径不存在返回false 注意: 1. 此方法只能创建文件夹,不能创建文件 */ private static void show02() { File f1 = new File("G:\\Demo01\\src\\File_Lei\\新建文件夹"); boolean mkdir01 = f1.mkdir(); //新建单级文件夹 System.out.println("mkdir01:" + mkdir01); File f2 = new File("G:\\Demo01\\src\\File_Lei\\新建文件夹\\123"); boolean mkdir02 = f2.mkdirs(); //新建多级文件夹 System.out.println("mkdir02:" + mkdir02); File f3 = new File("不存在路径\\123"); boolean mkdir03 = f3.mkdirs(); //路径不存在,会创建在软件程序文件(G:\Demo01)下面 System.out.println("mkdir03:" + mkdir03); } /* //public boolean createNewFile() :当且仅当具有该名称的文件尚未存在时,创建一个新的空文件。 创建文件的路径和名称在构造方法中给出(构造方法的参数) 返回值:布尔值 true:文件不存在,创建文件,返回true false:文件存在,不会创建,返回false 注意: 1. 此方法只能创建文件,不能创建文件夹(目录) 2. 创建文件的路径必须存在,否则会抛出异常 public boolean createNewFile() throws IOException createNewFile声明抛出了IOException,我们调用了这个方法,就必须待处理这个异常,要么throws,要么try...catch */ private static void show01() throws IOException { File f1 = new File("G:\\Demo01\\src\\File_Lei\\123.txt"); boolean createNewFile01 = f1.createNewFile(); //新建文件 System.out.println("createNewFile01:" + createNewFile01); //File createNewFile03 = new File("File_Leil\\1234.txt"); //System.out.println(createNewFile03.createNewFile()); //路径不存在,抛出IOException异常 } }
createNewFile01:false
mkdir01:false
mkdir02:false
mkdir03:false
delete01:true
delete02:true
File类_遍历(文件夹)目录功能:
案例:
package File_Lei; import java.io.File; /* File类遍历(文件夹)目录功能 public Strin[] list() :返回一个String数组,表示File目录中的所有子文件或目录 public File[] listFiles() :返回一个File数组,表示File目录中的所有的子文件或目录 注意: List方法和listFiles方法遍历的是构造方法中给出的目录 如果构造中给出的目录文件不存在,会抛出空指针异常 如果构造方法中给出的路径不是一个目录,也会抛出空指针异常 */ public class FileFor { public static void main(String[] args) { show01(); //返回的是一个String数组 System.out.println("=================================================="); show02(); //返回的是一个listfiles数组 } /* public File[] listFiles() :返回一个File数组,表示File目录中的所有的子文件或目录 遍历构造方法中给出的目录,会获取目录中所有文件/文件夹,把文件/文件夹封装为File对象,多个File对象存储到File数组中 */ private static void show02() { File f1 = new File("G:\\Demo01\\src\\File_Lei"); File[] files = f1.listFiles(); for (File f : files) { System.out.println(f); } } /* public Strin[] list() :返回一个String数组,表示File目录中的所有子文件或目录 遍历构造方法中给出的目录,会获取目录中所有文件/文件夹的名称,把获取到的多个名称存储到一个String类型的数组中 */ private static void show01() { //File f1 = new File("G:\\Demo01\\src\\File_Lei\\1.txt"); //NullPointerException 空指针异常 //File f1 = new File("G:\\Demo01\\src\\File_L"); //NullPointerException 空指针异常 File f1 = new File("G:\\Demo01\\src\\File_Lei"); String[] arr = f1.list(); for (String fileName : arr) { System.out.println(fileName); } } }
FileCreateDelete.java
FileFor.java
FileGet.java
FileIs.java
新建文件夹
==================================================
G:\Demo01\src\File_Lei\FileCreateDelete.java
G:\Demo01\src\File_Lei\FileFor.java
G:\Demo01\src\File_Lei\FileGet.java
G:\Demo01\src\File_Lei\FileIs.java
G:\Demo01\src\File_Lei\新建文件夹
FileFor.java
FileGet.java
FileIs.java
新建文件夹
==================================================
G:\Demo01\src\File_Lei\FileCreateDelete.java
G:\Demo01\src\File_Lei\FileFor.java
G:\Demo01\src\File_Lei\FileGet.java
G:\Demo01\src\File_Lei\FileIs.java
G:\Demo01\src\File_Lei\新建文件夹