如何在Java中获取文件大小

可能重复:
文件夹或文件的大小

我用这个代码实例化一个File对象:

 File f = new File(path); 

我如何获得这个文件的大小?

getUsableSpace()getTotalSpace()getFreeSpace()之间有什么区别?

File类中使用length()方法。 从javadocs:

返回由此抽象path名表示的文件的长度。 如果此path名表示目录,则返回值是未指定的。

对于问题的第二部分,直接从File的javadocs:

  • getUsableSpace()返回此抽象path名所指定的分区上该虚拟机的可用字节数

  • getTotalSpace()返回由此抽象path名命名的分区的大小

  • getFreeSpace()返回由此抽象path名指定的分区中的未分配字节数

你试过了吗

 long length = f.length(); 

有关getUsableSpace(),getTotalSpace(),getFreeSpace()之间的区别,请参阅J2SE 1.6中的这一增强

做了一个快速谷歌。 似乎要find这样做的文件大小,

 long size = f.length(); 

您发布的三种方法之间的差异可以在这里find

getFreeSpace()和getTotalSpace()是非常自我解释的,getUsableSpace()似乎是JVM可以使用的空间,在大多数情况下它将与可用空间的数量相同。