【发布时间】:2010-01-31 17:15:44
【问题描述】:
我正在尝试弄清楚如何根据文件或目录的大小将文件(或目录)的字节大小分别转换为千字节、兆字节、千兆字节等,以便与 Finder 在面板中显示的内容相匹配当您点击“获取信息”时。
我得到的字节大小与 Finder 中报告的字节大小完全匹配,但我不知道如何使文件大小(由 Finder 以 KB、MB、GB 等显示)匹配。
我知道在 10.6 中我们使用基数 10,因此千字节是 1000 字节而不是 1024,但是将字节数除以 1000(或 1000^2、1000^3 等)与 Finder 报告的不匹配。
例如,在 Finder 中:一个 330 字节的文本文件显示为 4KB 文件(所以我最初的猜测是将所有文件大小四舍五入为 4KB 数字),但 389,022 字节的目录显示为418KB(远远超过四舍五入到 4KB,所以我的猜测是错误的)。此外,一个 1,315,291,136 字节的文件显示为 1.33GB。
那么,有没有人可以在这里提供一些启示?这些数字是如何计算的?我环顾四周,找不到答案。
提前感谢您的帮助!
附:自从我开始编程以来,我一直是 100% 面向 Cocoa 的,而且我之前从未使用过 Carbon 框架(我知道它非常强大,只是不知道如何使用它)。我提到这一点,以防万一有人想给我一个 Carbon 解决方案,假设我知道如何使用它。我没有。
【问题讨论】:
标签: objective-c cocoa macos programming-languages