8
蘋果有changed how they calculate KB, MB, and GB in Max OS X 10.6。而不是使用1024,他們使用1000.可可中有多大的GB有一個常量嗎?
我的問題是如何處理這個在我的代碼?我試圖獲得免費的空間量,所以我通過NSFileManager
得到字節數。當我向用戶顯示時,我需要根據它們是10.5還是10.6來將它們轉換爲GB。
是否有GB大小的內置常量? (或者不管你是否稱1024號碼?)定義我自己似乎有點愚蠢。
## I'm currently doing something like this.
if (running10_6) {
double gbConst = 1000 * 1000 * 1000;
} else {
double gbConst = 1024 * 1024 * 1024;
}
NSDictionary *attr = [NSFM attributesOfFileSystemForPath:@"/" error:&error];
double bytes = [[attr objectForKey:NSFileSystemFreeSize] doubleValue];
double freeGB = bytes/gbConst;
您不需要*在Leopard系統上顯示Gibibytes的可用空間 - 沒有任何東西阻止您在所有平臺上使用Gigabytes(= 10^9字節)單元。我可以欣賞與主機系統相匹配的願望,但在這裏我似乎沒有必要。 – 2010-01-20 21:22:04
我向用戶展示了他們需要騰出多少空間才能讓我做出某些事情,所以如果讓它與他們的系統相匹配會更好。 – zekel 2010-01-20 21:30:51
啊,好的。這是一個很好的理由想要做到這一點。 – 2010-01-20 21:33:19