2012-12-16 43 views
0

可能重複:
Why does the value from NSFileSystemFreeSize differ from the free size reported in the iOS Settings?錯誤的文件系統的相關信息

我有這樣的代碼:

NSError *error = nil; 
NSString *outputDirectory = @"/Users/myuser/Desktop" 

NSDictionary *fileSystemAttributes = 
[fileManager attributesOfFileSystemForPath:outputDirectory error:&error]; 

if (!error) { 

    uint64_t freeSpace = (uint64_t)[fileSystemAttributes objectForKey:NSFileSystemFreeSize]; 

    NSLog(@"Free space in bytes: %lld.",freeSpace); 
} 

當我執行的代碼,它給了我大約45 TB的可用空間,這是完全錯誤的!

我試圖與

outputDirectory = @"/"; 

,但它也將失敗。

我錯過了什麼嗎? 謝謝你的時間。

回答

3

從文檔:

NSFileSystemFreeSize在文件系統中的關鍵屬性詞典 其值指示的文件系統上的自由空間量。該 對應的值是一個NSNumber對象

你應該從objectForKey:獲取對象賦給一個NSNumber變量,然後提取您要使用(freeSpace)從任何原始值。

+0

它的工作,謝謝! – Zi0P4tch0