相信操作File类的朋友,都使用过它的length()方法。这个方法返回的是某个指定文件的大小,其返回值为long型。但型long型最大可以表示到1024*1024*1024,所以当我要操作的文件大小超过1G时,用length()方法反回的值就不正确了。怎样才可以获得容量超过1G的文件的大小啊?请各位朋友帮忙解决下。

解决方案 »

  1.   

    long型的话,好像最大是2的63次幂减一吧,不止1G啊
      

  2.   

    public long getFileSizes(File f) throws Exception{//取得文件大小
            long s=0;
            if (f.exists()) {
                FileInputStream fis = null;
                fis = new FileInputStream(f);
               s= fis.available();
            } else {
                f.createNewFile();
                System.out.println("文件不存在");
            }
            return s;
        }