从键盘接受一个文件夹路径,统计该文件夹大小,并输出结果(文件夹路径下没有子文件夹否则要用递归)

83 篇文章 3 订阅

从键盘接受一个文件夹路径,统计该文件夹大小,并输出结果(文件夹路径下没有子文件夹否则要用递归)

package FileWork;

import java.io.File;
import java.util.Scanner;

public class countPath {
	public static void main(String[] args) {
		//从键盘接受一个文件夹路径,统计该文件夹大小,并输出结果(文件夹路径下没有子文件夹否则要用递归)
		Scanner sc=new Scanner(System.in);
		System.out.println("请输入文件夹路径:");
		String s=sc.nextLine();
		
		//文件夹对象
		File file=new File(s);
		File[] files=file.listFiles();
		long l=0;
		for(File f:files) {
			l=l+f.length();
		}
		System.out.println("此文件夹得大小为:"+l);
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
可以使用递归来遍历文件夹中的所有文件和文件夹,并统计它们的个数。以下是一个示例代码: ```java import java.io.File; public class FileCounter { public static void main(String[] args) { // 读取用户输入的文件夹路径 System.out.print("请输入文件夹路径:"); String path = System.console().readLine(); // 统计文件夹和文件的个数 int folderCount = 0; int fileCount = 0; File folder = new File(path); countFiles(folder, folderCount, fileCount); // 输出统计结果 System.out.println("文件夹个数:" + folderCount); System.out.println("文件个数:" + fileCount); } public static void countFiles(File folder, int folderCount, int fileCount) { if (folder.isDirectory()) { folderCount++; // 统计文件夹个数 File[] files = folder.listFiles(); if (files != null) { for (File file : files) { countFiles(file, folderCount, fileCount); } } } else { fileCount++; // 统计文件个数 } } } ``` 在上面的代码中,我们首先读取用户输入的文件夹路径,然后定义了两个变量 `folderCount` 和 `fileCount`,分别用于统计文件夹和文件的个数。接着,我们使用 `File` 类来创建一个文件夹实例,并调用 `countFiles()` 方法来统计文件夹中的文件和文件夹个数。在 `countFiles()` 方法中,我们首先判断当前文件是否是一个文件夹,如果是,则增加文件夹个数,并递归调用 `countFiles()` 方法来遍历当前文件夹中的所有文件和文件夹。如果当前文件不是一个文件夹,那么我们就增加文件个数。最后,在主方法中输出统计结果。 注意:上述代码并没有处理异常情况,如输入的路径不存在或者无法访问等情况。在实际开发中,还需要对这些异常情况进行适当的处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彭就是我的姓i

你的鼓励是我创作的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值