文件操作
文件操作
文件夹操作
fileFilter接口调用
package IO.Demo09;
import java.io.File;
import java.io.IOException;
import java.util.Date;
/**File类的使用
* (1)分隔符
* (2)文件操作
* (3)文件夹操作
* @author liu
*/
public class Demo01 {
public static void main(String[] args) throws IOException, InterruptedException {
separtor();
fileOpe();
}
//1分隔符
public static void separtor(){
System.out.println("路径分隔符:"+ File.pathSeparator);
System.out.println("名称分隔符:"+ File.separator);
}
//2文件操作
public static void fileOpe() throws IOException, InterruptedException {
//1创建文件
File file = new File("G:\\1.txt");
System.out.println(file.toString());
if(!file.exists()){
boolean b=file.createNewFile();
System.out.println("创建结果:"+b);
}
//2删除文件
//2.1直接删除
//System.out.println("删除结果:"+file.delete());
//2.2使用jvm删除
//file.deleteOnExit();
//Thread.sleep(5000);
//3获取文件信息
System.out.println("获取文件绝对路径"+file.getAbsolutePath());
System.out.println("获取相对路径"+file.getPath());
System.out.println("获取文件名"+file.getName());
System.out.println("获取父目录"+file.getParent());
System.out.println("获取文件长度"+file.length());
System.out.println("获取文件创建时间"+new Date(file.lastModified()).toString());
//4判断
System.out.println("是否可写"+file.canWrite());
System.out.println("是否文件"+file.isFile());
System.out.println("是否"+file.isHidden());
}
//3文件夹操作
public static void directoryOpe() throws InterruptedException {
//1创建文件夹
File dir = new File("G:\\aa\\bb\\cc");
System.out.println(dir.toString());
if (!dir.mkdir()) {
System.out.println("创建结果:" + dir.mkdirs());
}
//2删除文件夹
//2.1直接删除(只能删除空目录)
//System.out.println("删除结果:"+dir.delete());
//2.2使用jvm删除
//dir.deleteOnExit();
//Thread.sleep(5000);
//3获取文件夹信息
System.out.println("获取:绝对路径" + dir.getAbsolutePath());
System.out.println("获取路径:" + dir.getPath());
System.out.println("获取:文件夹名称" + dir.getName());
System.out.println("获取父目录:" + dir.getParent());
System.out.println("获取创建时间:" + new Date(dir.lastModified()));
//4判断
System.out.println("是否文件夹" + dir.isDirectory());
System.out.println("是否隐藏" + dir.isHidden());
//5遍历文件夹
File dir2 = new File("G:\\adb");
String[] files = dir2.list();
//File[] file3 =dir2.listFiles();
System.out.println("----------------------------");
for (String file : files) {
System.out.println(file);
}
System.out.println("---------调用fileFilter接口过滤---------------");
File[] files2 = dir2.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
if (pathname.getName().endsWith(".dll")) {
return true;
}
return false;
}
});
for (File file : files2) {
System.out.println(file.getName());
}
}
}
分类:
I/O流
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现