File类的使用
File类可以实现对文件的创建、删除、重命名等操作,是唯一与文件本身有关的操作类
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
/**
*
* @author wuzl
*
*/
public class test01 {
public static void main(String[] args) {
// 也可C:/Users/25316/Desktop这样写
File file = new File("C:\\Users\\25316\\Desktop\\wuzl.txt");
if (!file.exists()) {// 判断wuzl.txt是否存在
try {
file.createNewFile();
System.out.println("创建文件wuzl.txt成功");
} catch (IOException e) {
e.printStackTrace();
}
}
// 创建文件夹
File file2 = new File("C:\\Users\\25316\\Desktop\\wuzl");
if (!file2.exists()) {
file2.mkdir();// 创建文件夹,mkdirs()是创建连续的目录--》目录及其子目录
System.out.println("创建文件夹成功");
} else {
System.out.println("创建文件夹失败");
}
// 判断是否为文件夹或文件
System.out.println("是否为文件" + file.isFile());
System.out.println("是否为文件夹" + file.isDirectory());
// 删除文件,空文件夹可以删除,否则不能,需要先删除文件夹中内容再删除
boolean f = file.delete();
System.out.println("是否删除文件" + f);
boolean f2 = file2.delete();
System.out.println("是否删除文件夹" + f2);
// 列出当前目录中的文件和文件名,file2文件夹内事先已建立其他文件
String[] sfile = file2.list();
System.out.println(Arrays.toString(sfile));
// 列出当前目录中的文件及其属性,file2文件夹内事先已建立其他文件
File[] files = file2.listFiles();
for (File fs : files) {
System.out.println("文件长度" + fs.length());
System.out.println("文件名字" + fs.getName());
System.out.println("文件相对路径" + fs.getPath());// 在工作空间下的路径
System.out.println("文件绝对路径" + fs.getAbsolutePath());
// System.out.println("文件最后修改时间" + fs.lastModified());//以毫米时间表示
// 以标准格式显示文件最后修改时间
Date date = new Date(fs.lastModified());
DateFormat df = new SimpleDateFormat("yyyy:MM:dd' 'HH:mm:ss");// 时间格式化
System.out.println(df.format(date));
}
// 过滤器,列出以.txt结尾的文件
System.out.println("--------------");
File file6 = new File("C:\\Users\\25316\\Desktop\\wuzl");
File[] fx = file6.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
return pathname.getName().endsWith(".txt");
}
});
for (File fs : fx) {
System.out.println(fs.getName());
}
System.out.println("--------------");
// 重命名与移动文件
File file3 = new File("C:\\Users\\25316\\Desktop\\wu\\01\\02");
if (!file3.exists()) {
file3.mkdirs();
System.out.println("创建新文件夹file3及其子目录成功");
} else {
System.out.println("创建file3及其子目录失败");
}
file3.renameTo(new File("C:\\Users\\25316\\Desktop\\wu\\02"));// 移动02至wu文件夹下
File file4 = new File("C:\\Users\\25316\\Desktop\\wu\\02");
file4.renameTo(new File("C:\\Users\\25316\\Desktop\\wu\\03"));// 重命名02为03
}
}