在Java.io包之中,File类是唯一一个与文件本身操作(创建、删除、取得信息..)有关的程序。
以下是一些操作文件的常用方法:
File.separator:控制文件分隔符,由于linux下是/,windows下是\\, File.separator可以避免平台的原因出现的文件分隔符的区别。
创建文件对象:File file = new File(path);
判断文件是否存在:file.exists()
创建新文件: file.createNewFile()
获取当前文件所在路径: file.getPath( )
获取父路径: file.getParent( )获取文件名: file.getName( )
最后一次修改日期: file.lastModified()
判断当前对象时不是一个文件对象: file.isFile( )
判断当前对象是不是一个目录对象:file.isDirectory( )
列出当前目录下的所有文件:file.listFile( )删除文件:file.delete( )
获取文件长度:file.length( )
代码:
import java.io.*;
import java.util.Date;
public class FileIO {
public static void main(String[] args) throws Exception {
// 创建文件对象,使用File.separator,来控制文件分隔符,可以避免平台的原因。linux下是/,windows下是\\
File file = new File("C:" + File.separator + "Users" + File.separator + "hasee"
+ File.separator + "Desktop" + File.separator + "dir" + File.separator + "test.txt");
// 判断文件是否存在
if(!file.exists()) {
file.createNewFile();
}
System.out.println("获取当前文件所在路径:" + file.getPath());
System.out.println("获取父路径:" + file.getParent());
System.out.println("获取文件名:" + file.getName());
System.out.println("最后一次修改日期: " + new Date(file.lastModified()));
System.out.println("是文件吗?" + file.isFile() + " 是目录吗?" + file.isDirectory());
System.out.println("批量创建文件");
File tmpFile = null;
for(int i = 0; i < 5; i++) {
tmpFile = new File(file.getParent() + File.separator + i + ".txt");
tmpFile.createNewFile();
tmpFile = null;
}
System.out.println("当前目录下的所有文件");
// 列出文件夹下所有文件
for(File f : file.getParentFile().listFiles()) {
System.out.println(f.getPath());
// 删除文件
f.delete();
}
}
}
运行截图: