当我们在Java中需要处理文件或目录时,通常需要使用File类。File类代表磁盘中的文件或目录的路径名。
File类的创建
可以通过以下两种方法来创建File类:
1.使用路径名字符串或File类对象作为参数创建File对象
File file1 = new File("C:/Users/Desktop/Example.txt"); //基于路径名字符串创建File对象
File file2 = new File("C:/Users/Desktop", "Example.txt"); //基于File类对象和路径名字符串创建File对象
2.使用URI对象作为参数创建File对象
File file3 = new File(new URI("file://C:/Users/Desktop/Example.txt"));
File类的操作
File类提供了一些常用的方法,以便于处理文件和目录。
1.创建文件或目录
可以通过以下方法来创建文件或目录:
File file = new File("C:/Users/Desktop/Example.txt");
file.createNewFile(); //创建一个新文件
File dir = new File("C:/Users/Desktop/ExampleDir");
dir.mkdir(); //创建一个新目录
2.删除文件或目录
可以通过以下方法删除文件或目录:
File file = new File("C:/Users/Desktop/Example.txt");
file.delete(); //删除文件
File dir = new File("C:/Users/Desktop/ExampleDir");
dir.delete(); //删除目录
如果目录中有文件,那么需要先删除目录中的所有文件,然后才能删除目录本身。
3.检查文件或目录是否存在
可以通过以下方法检查文件或目录是否存在:
File file = new File("C:/Users/Desktop/Example.txt");
if(file.exists()) { //判断文件是否存在
System.out.println("文件存在!");
} else {
System.out.println("文件不存在!");
}
File dir = new File("C:/Users/Desktop/ExampleDir");
if(dir.isDirectory()) { //判断是否为一个目录
System.out.println("是目录!");
} else {
System.out.println("不是目录!");
}
4.获取文件或目录的信息
可以通过以下方法获取文件或目录的信息:
File file = new File("C:/Users/Desktop/Example.txt");
System.out.println("文件名:" + file.getName()); //获取文件名
System.out.println("所在目录:" + file.getParent()); //获取文件所在目录
System.out.println("文件路径:" + file.getAbsolutePath()); //获取文件的绝对路径
System.out.println("文件大小:" + file.length()); //获取文件的大小(单位:字节)
System.out.println("最后修改时间:" + new Date(file.lastModified())); //获取文件的最后修改时间
示例
1.创建一个新文件并写入内容
import java.io.*;
public class Example1 {
public static void main(String[] args) throws Exception {
File file = new File("C:/Users/Desktop/Example.txt");
FileWriter writer = new FileWriter(file);
writer.write("Hello World!");
writer.close();
}
}
2.遍历一个目录下的所有文件和子目录
import java.io.*;
public class Example2 {
public static void main(String[] args) throws Exception {
File dir = new File("C:/Users/Desktop/ExampleDir");
File[] files = dir.listFiles();
for(File file : files) {
if(file.isDirectory()){
System.out.println("目录:" + file.getName());
} else {
System.out.println("文件:" + file.getName());
}
}
}
}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java中表示一个文件的File类型详解 - Python技术站