可能重複:
Getting the size of a file in JavaJava:如何:有效地獲取2GB大小的文件大小?
我發現下面的鏈接。
1)The best way to get the file size which greater than 2GB in php?
2)java get file size efficiently
,但我想向您請教如何做到這一點在Java中的傢伙。第二個有限制,這就是爲什麼我認爲不適合回答我的問題。
可能重複:
Getting the size of a file in JavaJava:如何:有效地獲取2GB大小的文件大小?
我發現下面的鏈接。
1)The best way to get the file size which greater than 2GB in php?
2)java get file size efficiently
,但我想向您請教如何做到這一點在Java中的傢伙。第二個有限制,這就是爲什麼我認爲不適合回答我的問題。
To quote @JeffFoster和@jsight的其他問題,你鏈接到:
先衡量它 - 它是你在你的具體情況真的很慢?如果它不會引起問題,那麼沒有關鍵的問題會發生!
和
獲取文件的長度將需要一個系統調用,不管你怎麼做。如果它通過網絡或其他非常慢的文件系統,速度可能會很慢。沒有比File.length()更快的方法來獲取它,而這裏「慢」的定義只是意味着不要不必要地調用它。
File.length()
是完美的,比使用FileChannel或URL更快。在java get file size efficiently的接受答案中的測試實際上顯示了這一點,但在這個答案中的測試結果的解釋是錯誤的(我剛剛在那裏添加了一條評論)。
也許你想知道如何獲得大於2GB的文件大小,因爲int的最大值是2^32?
那麼,你知道java.io.File.length()返回一個長 - 而不是一個int?也就是說,它返回一個64位的整數,而不是32位的一個
http://download.oracle.com/javase/6/docs/api/java/io/File.html#length()
什麼限制是存在於第二柱?爲什麼它不適合你的問題? – 2011-06-02 00:44:29
你能告訴爲什麼java.io.File.length()有一個限制,爲什麼是第一個鏈接,甚至在這裏只專注於PHP – 2011-06-02 00:48:11