1.File概述
(1)
java.io.File
类:文件和文件目录路径的抽象表示形式,与平台无关(2)
File
类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO
流来完成。(3) 想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个
File
对象,但是Java程序中的一个File
对象,可能没有一个真实存在的文件或目录。(4)
File
对象可以作为参数传递给流的构造器,指明读取或写入的"终点"。
2.File类的使用
2.1绝对路径和相对路径
(2)相对路径:是相对于某个位置开始
./当前工作目录
../上一级路径的目录
../../上两级目录
(1)绝对路径:磁盘的跟路径一级一级的往下找
C:\ccc\ddd\1.txt
2.2File类的构造方法
构造方法 | 功能 |
---|---|
File(String pathname) | 通过将给定的路径名字符串转换为抽象路径名来创建新的File实例 |
File(String parent, String child) | 从父路径字符串和子路径名字符串创建新的File实例 |
代码实现:File(String pathname)
public class Demo6 {
public static void main(String[] args) throws IOException {
File file = new File("D:/Test/1.txt");
//通过throws声明异常
System.out.println(file.createNewFile());//true
}
}
代码实现:File(String parent, String child)
public static void main(String[] args) throws IOException {
File file = new File("D:","Test/2.txt");
//通过throws声明异常
System.out.println(file.createNewFile());
}
2.3File类下面的常用方法
boolean createNewFile() | 创建一个文件,返回值是布尔类型的数据 |
boolean mkdir() | 创建单级路径 |
boolean mkdirs() | 创建多级路径 |
boolean delete() | 立即删除文件 |
boolean deleteOnExit() | 不会立即删除,程序退出以后才删除 |
File对象的判断方法 | |
boolean isFile() | 是否是文件 |
boolean isDectory() | 是否是文件夹 |
boolean isHidden() | 是否是隐藏文件 |
boolean isAbsolute() | 是否是绝对路径 |
boolean exists() | 判断文件夹是否存在 |
返回值是String类型的数据的 | |
String getName() | 获取文件或者文件夹的名字 |
String getPath() | 获取当前对象的路径 |
String getParent() | 获取当前文件对象的上一级的目录 |
返回是long类型数据的 | |
long length() | 返回值是文件占用的字节数 |
long lastModified() | 获取当前文件最后一次修改的时间(毫秒,除以1000才是秒) |
File[] listFiles() | 获取当前文件夹下面的所有的文件 |
String[] list() | 获取当前文件夹下面的所有文件的名字 |
代码展示:
public class Demo7 {
public static void main(String[] args) {
File file = new File("D:/Test/aaa");
//创建多级或单级文件夹
System.out.println(file.mkdirs());
//删除文件夹
System.out.println(file.delete());
File file1 = new File("D:/Test/AAA");
System.out.println(file1.mkdirs());
new Scanner(System.in);
//程序退出立即删除文件夹
file1.deleteOnExit();
File file2 = new File("D:/Test/bbb");
System.out.println(file2.mkdirs());
//判断bbb是文件
System.out.println(file2.isFile());
//判断bbb是文件夹
System.out.println(file2.isDirectory());
//判断bbb是否是隐藏文件
System.out.println(file2.isHidden());
//判断bbb是绝对路径
System.out.println(file2.isAbsolute());
//判断bbb是否存在
System.out.println(file2.exists());
File file3 = new File("D:/Test/");
//获取Test下文件或者文件夹名字
System.out.println(file3.getName());
//获取当前对象的路径
System.out.println(file3.getPath());
//获取当前文件对象的上一级的目录
System.out.println(file3.getParentFile());
File file4 = new File("D:/Test");
//返回文件占用的字节数
System.out.println(file4.length());
//返回文件最后一次修改的时间
System.out.println(file4.lastModified());
//获取当前文件下面所有的文件
File[] files = file4.listFiles();
for (File file5 : files) {
System.out.println(file5);
}
//获取当前文件夹下面的所有文件的名字
String[] list = file4.list();
for (String s : list) {
System.out.println(s);
}
}
}
本文含有隐藏内容,请 开通VIP 后查看