2012-04-06 24 views
1

我試圖讓使用目的C.的iOS文件的磁盤大小的文件大小截至目前我已經能夠得到使用 文件和其他文件信息的實際大小NSFileManager然後獲取屬性attributesOfItemAtPath:error但不是磁盤上的大小。我也試着從struct stat獲取文件大小,但它再次不給我用大小來NSTask撥打電話到du -h上disk.I嘗試,但iOS版並沒有讓我到餐桌的其他進程。任何想法,歡迎:)的iOS得到磁盤

我知道這個問題是類似的許多人,但不同的是,我試圖做到這一點在iOS和大多數的其他系統中使用的方法並不在這裏工作。

感謝

回答

3

編輯:這是值得一讀尼古拉汝河的回答同樣的問題在這裏:https://stackoverflow.com/a/28660040/97337

用於在iOS塊大小信息參見What is the block size of the iphone filesystem?。磁盤上的文件大小將爲stat,向上舍入到下一個塊。

+0

所以基本上我需要找到塊大小。我正在考慮使用'st_blocks * 512',但我不知道'st_blocks'總是512字節的數量還是不同的,從操作系統到操作系統?有沒有任何方法來獲得塊大小? – 2012-04-08 00:18:36

+0

getmntinfo()。看到鏈接的問題(什麼是iPhone文件系統的塊大小?「答案是8k。 – 2012-04-08 01:09:47

+0

感謝您的答覆。顯然,我閱讀鏈接,但我想知道是否有可能使用'st_blocks * 512'。關於stat是否總是以512爲單位報告'st_blocks'在我看來這是這種情況 – 2012-04-08 06:18:22