File类是java.io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的一些方法,实现创建、删除、重命名等操作。File类的对象主要用来获取文件本身的一些信息,如文件所在的目录、文件长度、文件读写权限等。数据流可以将数据写入到文件中,文件也是数据流最常用的数据媒体。
文件的创建与删除
可以使用File类创建一个文件对象。通常使用以下3中方法来创建文件对象:
(1)File(String pathname)
该构造方法通过将给定的路径名字符串转换为抽象路径名来创建一个新的File实例。
语法如下:
New File(String pathname)
其中,pathname指路径名称(包括文件名)。
例如:
File file=New File("C:/Test/test.txt");
表示在C盘的Test文件夹下创建了一个test.txt文件
(2)File(String parent,String child)
该构造方法根据定义的父路径和子路径字符串(包含文件名)创建一个新的File对象。
语法如下:
new File(String parent,String child)
parent:父路径字符串。例如:C:/或C:/Test
child子路径字符串。例如:test.txt
(3)File(File file,String child)
该构造方法根据parent抽象路径名和child路径名字符串来创建一个新的File实例对象。
语法如下:
new File(File file,String child)
file:父路径对象,例如:C:/Test/
child:子路径字符串,例如:test.txt
当使用File类创建一个文件时,例如:
File file=new File("C:/Test/1.txt");
如果当前目录("C:/Test/")中已存在1.txt,可以通过文件对象的dele()方法将其删除,如果不存在1.txt文件,File类对象可通过createNewFile()方法创建一个名称为1.txt的文件。
实例:
package FileIO;
import java.io.*;//导入I/O包
public class FileTest1 {//创建FileTest1类
public static void main(String[] args) {
File file=new File("test.txt");//创建文件对象,位置已默认在当前程序所在文件目录下
if(file.exists()){//判断文件是否存在
file.delete();//文件存在则删除
System.out.println("test.txt文件已删除!");
}
else{//文件不存在
try{
file.createNewFile();//创建文件
System.out.println("test.txt文件创建成功!");
System.out.println(file.getAbsolutePath());//查看新文件的绝对路径
}catch(Exception e){
System.out.println(e.getMessage());
}
}
}
}
获取文件信息
File类提供了许多的获取文件信息的方法
想了解细节请戳——File类方法详细信息
实例2:
package FileIO;
import java.io.File;//导入
public class FileTest2 {
public static void main(String[] args) {
File file=new File("test.txt");//创建文件对象,位置已默认在当前程序所在文件目录下
if(file.exists()){//判断文件是否存在
String filename=new String();//获取文件名称
filename=file.getName();
long leng=file.length();//获取文件长度
boolean B=file.isFile();//查看文件是否存在
long time=file.lastModified();//查看文件最后一次修改时间
file.delete();//文件存在则删除
System.out.println("文件名称是:"+filename);
System.out.println("文件的长度为:"+leng);
System.out.println("w文件是否存在:"+B);
System.out.println("文件最后一次被修改的时间:"+time);
System.out.println("test.txt文件已删除!");
}
else{//文件不存在
try{
file.createNewFile();//创建文件
System.out.println("test.txt文件创建成功!");
System.out.println(file.getAbsolutePath());//查看新文件的绝对路径
}catch(Exception e){
System.out.println(e.getMessage());
}
}
}
}