JAVA 文件操作(2)

mkdir()  和 mkdirs()      创建目录

File dir = new File("XXXX");
boolean flag = dir.mkdir();

flag = dir.mkdirs();

mkdir() : 确保上级目录存在,不存在则创建失败,flag返回0。

mkdirs() :上级目录可以不存在,不存在一同来创建。

 

list() 和 listFiles() 和 listRoots()   列出下一级

list() 下级名称     返回多个字符串。

String[] subNames = dir.list();
for(String s:subNames) {
System.out.println(s);
}

listFiles() 下级对象  返回多个文件对象。

File[] subFiles = dir.listFiles();
for(File s:subFiles) {
    System.out.println(s.getAbsolutePath());
}

listRoots()  所有盘符  返回多个文件对象。

File[] roots = dir.listRoots();
for(File r:roots) {
    System.out.println(r.getAbsolutePath());
}

打印子孙级目录和文件的名称     利用递归调用

public static void printName(File src,int deep) {
		//控制前面层次
		for(int i=0;i<deep;i++) {
			System.out.print("-");
		}
		//打印名称
		System.out.println(src.getName());   
		if(null ==src || !src.exists()) {  //递归头 
			return ;
		}else if(src.isDirectory()) { //目录
			for(File s:src.listFiles()) {
				printName(s,deep+1); //递归体
			}
		}
	}

统计文件夹的大小     利用递归调用

	private static long len =0;
	public static void count(File src) {	
		//获取大小
		if(null!=src && src.exists()) {
			if(src.isFile()) {  //大小
				len+=src.length();
			}else { //子孙级
				for(File s:src.listFiles()) {
						count(s);
				}
			}
		}
	}

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值