ruozhihaosi 2011-05-10 17:25
浏览 1250
已采纳

在java中如何获取文件夹占用空间的大小?(注意这里不是问文件夹大小)

一般情况下,文件夹大小和文件夹占用空间是不一样的,如附件所示。
在java中,如果要求文件夹大小,可以通过逐个文件大小的累加而获得。
但是如果在java中要获取文件夹占用空间,有什么办法?

  • 写回答

3条回答 默认 最新

  • suziwen 2011-05-12 09:55
    关注

    下面的代码 得JDK1.6以上的
    [code="java"]double used = ((file.getTotalSpace() - file.getFreeSpace()) / 1024.0 / 1024 / 1024);
    double total = file.getTotalSpace() / 1024.0 / 1024 / 1024;
    double free = file.getFreeSpace() / 1024 / 1024 / 1024.0;
    setUsedSpace(used > 1024?((int)((100*used)/1024))/100.0 +"T" : ((int)(100*used))/100.0 + "G");
    setTotalSpace(total > 1024?((int)((100*total)/1024))/100.0 +"T" : ((int)(100*total))/100.0 + "G");
    setFreeSpace(free > 1024?((int)((100*free)/1024))/100.0 +"T" : ((int)(100*free))/100.0 + "G");[/code]

    你也可以这样写通过JAVA调用操作系统命令行的API,去查看文件信息(只是你得去判断LINUX和WINDOW的命令行区别)

    还有两个链接楼主也可以参考 下

    [url]http://liangxh2008.blog.163.com/blog/static/11241167920105173330694/[/url]

    [url]http://www.yesky.com/154/1778154.shtml[/url]

    真不行的话,就估计只能按计算 公式 自己去占用空间大小 了,(只是你得去区分不同的分区,JAVA对于这种操作比较底层的数据估计还比较麻烦)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 用三极管设计—个共射极放大电路
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示