import java.io.File;
import java.util.Date;
/**
* 认识File类
*
*
* 文件和目录路径名的抽象表示形式。一个File对象可以代表一个文件或目录
* 可以实现获取文件和目录属性等功能
* file 文件
* directory 目录DOS 文件夹window file folder
*
* @author Administrator
*
*/
public class TestFile1 {
public static void main(String[] args) {
//创建一个File对象,指向一个文件或者目录
//File file = new File("e:\\readme.txt");
//File file = new File("e:/readme.txt");
//File file = new File("readme.txt");//??? 当前目录下 当前项目
//通过File对象获取指定文件或者目录的属性
File file = new File("e:/");
System.out.println(file.getName());//文件名称
System.out.println(file.exists());//存在
System.out.println(file.length());//长度
System.out.println(file.getPath());//路径
System.out.println(file.getAbsolutePath());//绝对路径
System.out.println(file.getParent());//上级路径
//System.out.println(file.getParentFile());
System.out.println(file.canRead());
System.out.println(file.canWrite());
System.out.println(file.isHidden());//隐藏文件
//
File [] files = file.listFiles();//当前目录下的所有文件和子目录,并且使用File来指向每个文件和子目录
//String [] files2 = file.list();当前目录下的所有文件和子目录的名称
//遍历数组,实现dir
for(File f : files){
//输出时间
System.out.print(new Date(f.lastModified()).toLocaleString());
//f.isDirectory() f.isFile()
if(f.isDirectory()){
System.out.print(" <DIR> ");
}else{
System.out.print(" "+f.length());
}
//输出文件或目录的名称
System.out.println(f.getName());
}
}
}
import java.io.File;
import java.io.IOException;
/**
* 认识File类
*
* 可以实现对文件和目录的创建、删除等功能
* @author Administrator
*
*/
public class TestFile2 {
public static void main(String[] args) {
//创建一个File,指向一个文件
//File file = new File("e:/readme2.txt");
///File file = new File("e:/abc/readme2.txt");
File file = new File("e:/abc/def/ghi/jkl/readme2.txt");
//如果该文件不存在,就创建。如果存在,就删除
boolean flag = file.exists();
if(flag){//存在
file.delete();
}else{//不存在
//
File dir = file.getParentFile();
if(!dir.exists()){
//dir.mkdir();//创建一个子目录 make directory
dir.mkdirs();//创建多级子目录
}
try {
file.createNewFile();//创建文件
} catch (IOException e) {
e.printStackTrace();
}
}
}
}