java程序,一个方法用来压缩文件,由于文件可能会比较大,我希望能先预计到需要压缩多久,将信息反馈到页面。我使用的是第一个是:org.apache.tools.ant.taskdefs.Zip的ZIP压缩方法,又找了个调用winrar的压缩 都不能在压缩之前预计到时间, 请问有没有什么好的方法能先预计到压缩时间的? 

解决方案 »

  1.   

    @Inhibitory
    例如有文件10M,现在已经压缩好了1M,花了2分钟,
    则当前计算压缩完估计需要 2 * 10 / 1 = 20分钟,
    则还需要20 - 2 = 18分钟才能压缩完。 
    ================================
    这倒是个办法,不过有点麻烦,姑且先这么用了。不知道还有什么更好的办法,有没有方法能知道压缩速率的?
      

  2.   

    压缩如果压缩的是文件夹集合的话,光遍历统计就是很麻烦的一件事。楼主是想知道java有没有自带的统计压缩速率的方法吧?貌似好像没有。
      

  3.   

    压缩如果压缩的是文件夹集合的话,光遍历统计就是很麻烦的一件事。楼主是想知道java有没有自带的统计压缩速率的方法吧?貌似好像没有。 
    ======================
    为什么引用没用确实是这样的,所以我现在也没用这个方法。压缩速率java都不能获得啊,真麻烦。
    不过我用winRar直接压缩的时候,是有个大概的压缩时间的,这个有办法获得吗?