import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
/*
* File类的使用
*/
public class FileDemo {
public static void main(String[] args) {
//File表示一个文件或目录
//D:\\JavaTest\\FileTest\\file.txt
//D:/JavaTest/FileTest/file.txt
File file1 = new File("D:"+ File.separator + "JavaTest" + File.separator + "FileTest" + File.separator + "file.txt");
if(!file1.exists()) {
try {
file1.createNewFile();//创建文件
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println("file1.isFile() " + file1.isFile());//是否为文件
System.out.println("file1.isDirectory() " + file1.isDirectory());//是否为目录
File file2 = new File("D:\\JavaTest\\FileTest\\test");
System.out.println("file2.delete() " + file2.delete());//文件夹下有文件不可以删除
//这个地方要注意,因为test文件下原来只有test1一个文件,第一次删除以后,执行第二次的时候,
//文件取不到的话会去删除上层目录(目录下没有文件的时候会被删除)
File file3 = new File("D:\\JavaTest\\FileTest\\test\\test1.txt");
System.out.println("file3.delete()" + file3.delete());
File file4 = new File("D:\\JavaTest\\FileTest");
String[] names = file4.list();//列出当前目录下的所有文件名
System.out.println(Arrays.toString(names));
File[] file5 = file4.listFiles();//列出当前目录下的所有文件,以file对象返回
for(File f : file5) {
System.out.println("--------------------------------");
System.out.println(f.length());//文件长度
System.out.println(f.getName());//文件名
System.out.println(f.getPath());//文件相对路径
System.out.println(f.getAbsolutePath());//文件绝对路径
System.out.println(f.isHidden());//是否为隐藏文件
System.out.println(f.canRead());//是否可读
Date date = new Date(f.lastModified());
DateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
System.out.println(simpleDateFormat.format(date));
System.out.println("--------------------------------");
}
File file6 = new File("D:\\JavaTest\\FileTest\\File1");
System.out.println(file6.mkdir());//生成文件夹(mkdirs()生成多层文件夹)
//重命名和移动文件夹
file6.renameTo(new File("D:\\JavaTest\\File1Rename"));
// File[] files = file4.listFiles(new FileFilter() {
//
// @Override
// public boolean accept(File pathname) {
// return pathname.getName().endsWith(".txt");
// }
// });
File[] files = file4.listFiles((pathname) -> pathname.getName().endsWith(".txt"));//Lambda表达式
for (File f : files) {
System.out.println(f.getName());
}
}
}
Java-File类
最新推荐文章于 2024-01-14 23:19:08 发布