#Java扫描文件目录大小及递归扫描
package com.example.core.mydemo; import org.apache.commons.io.FileUtils; import java.io.File;
import java.io.FileWriter;
import java.io.IOException; public class FileDirSizeTest {
public static void main(String[] args) {
try{
FileWriter fw = new FileWriter("E:\\test\\test221109.txt");
printDir("E:\\test",fw);
fw.close();
}catch (Exception e) {
e.printStackTrace();
}
} public static void printDir(String dir,FileWriter fw) throws IOException {
File f = new File(dir);
if(f.exists()){
File[] fileArray = f.listFiles();
for(File f2 : fileArray){
if(f2.isDirectory()){
long size = FileUtils.sizeOfDirectory(new File(f2.getPath()));
String realSize = "0";
if (size>FileUtils.ONE_GB) {
realSize = String.valueOf((size / FileUtils.ONE_GB))+"GB";
}else if(size >=FileUtils.ONE_MB){
realSize = String.valueOf((size / FileUtils.ONE_MB))+"MB";
}else if(size >=FileUtils.ONE_KB){
realSize = String.valueOf((size / FileUtils.ONE_KB))+"KB";
}
System.out.println("Path:"+f2.getAbsolutePath()+",Size: " + realSize);
fw.write("Path:"+f2.getAbsolutePath()+",Size: " + realSize +"\n");
printDir(f2.getAbsolutePath(),fw);
}
} }
} }

Java扫描文件目录大小及递归扫描的更多相关文章

  1. Java扫描指定文件路径下的文件并且递归扫描其子目录下的所有文件

    本文主要实现了扫描指定文件路径下的文件,递归扫描其子目录下的所有文件信息,示例文件为: 要求将后缀为.dat的文件夹信息也写入到数据库中,然后将.chk文件解析,将文件中对应的内容读出来写入到数据库, ...

  2. Zxing二维码精简(竖屏、拉伸处理、扫描框大小和扫描线移动)

    本帖最后由 levil_ad 于 2013-12-30 13:55 编辑 最近没事做了下二维码扫描,用的是ZXing的开源代码,官方源码地址:http://code.google.com/p/zxin ...

  3. Android Zxing框架扫描解决扫描框大小,图片压缩问题

    在我们是Zxing框架进行二维码扫描的时候,会发现,如今手机随着分辨率的添加.那个扫描框会越来越小,在1920*1280和1280*720还算比較正常.可是三星的几款手机note4,5.S6,等几款手 ...

  4. 如何精确地测量java对象的大小-底层instrument API

    转载: 如何精确地测量java对象的大小-底层instrument API 关于java对象的大小测量,网上有很多例子,大多数是申请一个对象后开始做GC,后对比前后的大小,不过这样,虽然说这样测量对象 ...

  5. QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式

    目录 功能介绍 常见问题 效果图与示例 apk Gradle 依赖 布局文件 自定义属性说明 接口说明 关于我 功能介绍 根据之前公司的产品需求,参考 barcodescanner 改的,希望能帮助到 ...

  6. java浮点型比较大小

    ======1   java浮点型比较大小 Float.parseFloat(String)和Float.valueOf(String).floatValue()的区别 Float.parseFloa ...

  7. 一步步优化JVM四:决定Java堆的大小以及内存占用

    到目前为止,还没有做明确的优化工作.只是做了初始化选择工作,比如说:JVM部署模型.JVM运行环境.收集哪些垃圾回收器的信息以及需要遵守垃圾回收原则.这一步将介绍如何评估应用需要的内存大小以及Java ...

  8. tips:Java基本数据类型大小比较

    tips:Java基本数据类型大小比较! Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. ------四个整数型------ (1)byte:b ...

  9. 如何准确计算Java对象的大小

    如何准确计算Java对象的大小 原创文章,转载请注明:博客园aprogramer 原文链接:如何准确计算Java对象的大小      有时,我们需要知道Java对象到底占用多少内存,有人通过连续调用两 ...

  10. idea 安装findBugs 可以做代码扫描,也可以导出扫描结果生成扫描报告

    idea 安装findBugs 可以做代码扫描,也可以导出扫描结果生成扫描报告 https://my.oschina.net/viakiba/blog/1838296 https://www.cnbl ...

随机推荐

  1. QUIC技术创新 让视频和图片分发再提速

    ​简介:在1月12日的「阿里云CDN产品发布会-新一代传输协议QUIC让CDN更快一步」之上,阿里云技术专家淮叶分享了QUIC技术及其应用落地实践,内容包含:QUIC协议介绍.相比TCP有哪些优势.应 ...

  2. KubeVela 成为 CNCF 沙箱项目,让云端应用交付更加简单

    简介: KubeVela 就是这样一个面向用户的上层平台项目.对于业务开发者来说,KubeVela 简单.易用,它可以让开发者以极低的心智负担和上手成本在 Kubernetes 上定义与部署应用... ...

  3. [Trading] 关于短线交易 Day Trading 的知识

    短线交易员操纵市场,试图利用股票.期货和其他金融产品价值的短期波动. 以下是你需要知道的关于日交易的知识,包括免费的交易图表,交易策略,以及日交易软件和平台. https://www.thebalan ...

  4. [Py] Python 接口数据用 pandas 高效写入 csv

    通过 pandas 把 dict 数据封装,调用接口方法写入 csv 文件. import pandas as pd data = [{"name": "a"} ...

  5. IPD、CMMI、敏捷

    华为公司早在2009年正式发文在全公司现在流程IPD.CMMI的基础上,所有产品线的软件开发团队全面推行敏捷开发.除了华为之外,不仅是互联网企业,现在凡是涉及到软件开发的企业对敏捷都不陌生,那么IPD ...

  6. 【GUI软件】小红书搜索结果批量采集,支持多个关键词同时抓取!

    目录 一.背景介绍 1.1 爬取目标 1.2 演示视频 1.3 软件说明 二.代码讲解 2.1 爬虫采集模块 2.2 软件界面模块 2.3 日志模块 三.获取源码及软件 一.背景介绍 1.1 爬取目标 ...

  7. 【GUI软件】小红书评论采集v4.0升级版:自动采集1w多条,含二级评论!

    目录 一.爬取目标 1.1 效果截图 1.2 演示视频 1.3 软件说明 二.代码讲解 2.1 爬虫采集模块 2.2 软件界面模块 2.3 日志模块 三.获取源码及软件 一.爬取目标 您好!我是@马哥 ...

  8. 6、Samba 文件共享服务

    1.Samba 服务基础 SMB(Server Message Block),服务消息块 CIFS(Common Internet File System),通用互联网文件系统 Samba 项目:ht ...

  9. Linux环境下:程序的链接, 装载和库[动态链接]

    静态链接库在程序编译阶段就完成了链接工作,完成链接后,依赖的库就都打入了可执行文件中,所以文件大小一般会比较大. 而动态库链接库是在程序运行时才被链接的,所以磁盘上只要保留一份副本,因此节约了磁盘空间 ...

  10. 推荐几款火爆的Python在线编辑器

    在当今数字化时代,编程已成为一项不可或缺的技能.Python作为一种简单易学且功能强大的编程语言,受到了广大编程爱好者和专业开发人员的青睐.为了方便大家随时随地编写和运行Python代码,市面上涌现了 ...