package file_operations;
import java.io.File;
import java.io.IOException;
import java.util.Date;
import javax.xml.crypto.Data;
/**
* 演示文件类操作 File
* 文件操作
* 文件夹操作
* @author 86156
*
*/
public class Demo1 {
public static void main(String[] args) throws Exception {
//fileopeations();
directoropeations();
}
/**
* 文件操作
*/
private static void fileopeations() throws Exception{
//创建一个文件
File file = new File("f:\\javatest/file.txt");
//判断文件是否存在,如果不存在,则创建
if(!file.exists()){
file.createNewFile();
}
//文件的操作
System.out.println("获取文件的绝对路径:"+file.getAbsolutePath());
System.out.println("获取文件的路径:"+file.getPath());
System.out.println("获取文件名:"+file.getName());
System.out.println("获取文件的长度:"+file.length());
System.out.println("获取文件的创建时间:"+new Date(file.lastModified()).toLocaleString());
System.out.println("获取文件的父路径:"+file.getParent());
//对文件的判断
System.out.println("是否是一个文件:"+file.isFile());
System.out.println("是否可写入:"+file.canWrite());
System.out.println("是否是隐藏:"+file.isHidden());
//删除文件
//file.delete();
}
/**
* 文件夹操作
*/
private static void directoropeations() {
//创建文件夹
File dir = new File("f:\\javatest/aaa/bbb/ccc/ddd");
if(!dir.exists()){
//dir.mkdir();//创建单级目录
boolean b=dir.mkdirs(); //创建多级目录
System.out.println("文件夹创建结果:"+b);
}
//文件夹的操作
System.out.println("获取文件夹名称:"+dir.getName());
System.out.println("获取文件夹路径:"+dir.getPath());
System.out.println("获取文件夹的绝对路径:"+dir.getAbsolutePath());
System.out.println("获取父目录:"+dir.getParent());
System.out.println("获取文件夹的创建时间:"+new Date(dir.lastModified()).toLocaleString());
//文件夹的删除
boolean b = dir.delete(); //只能删除单级目录,并且只能删除空目录
System.out.println("删除结果:"+b);
//文件夹遍历
System.out.println("----------------");
File dir2 = new File("f:\\javatest/aaa/bbb/ccc/ddd");
String[] arr = dir2.list();
for(String ss:arr){
System.out.println(ss);
}
System.err.println("---- Filefilter 接口-----");
File[] files = dir2.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
if(pathname.getName().endsWith("png")){
return true;
}
return false;
}
});
for(File file:files){
System.out.println(file.getName());
}
}
}