【问题标题】:NSFileSize only returns 102NSFileSize 只返回 102
【发布时间】:2012-07-04 13:21:52
【问题描述】:

当我调用下面这行代码时,返回的值总是102。

[[(NSFileManager*)manager attributesOfItemAtPath:[(NSURL*)file path] error:nil] objectForKey:@"NSFileSize"];

为了演示,我将 NSLog 路径及其大小。

Aperture(我通过上面的代码运行的路径)实际上是 912MB。

我在这里做错了什么?我真的很感谢你的帮助。谢谢!

【问题讨论】:

  • 你为什么投NSFileManagerNSURL
  • @mavrick3 我这样做是为了演示。我的代码中没有这样做。
  • @Tanner_Silvia 这是我第一次看到这种风格的帖子,所以我只是想知道。

标签: objective-c cocoa osx-lion nsfilemanager


【解决方案1】:

.app 文件 实际上是一个特殊的文件夹,称为App Bundle。文件夹(目录)只需要保存其内容的元信息,所以 102 字节对我来说看起来很合适。

如果您想要二进制文件的大小,请查看Aperature.app/Contents/MacOS/Aperature,尽管显示的 912.5MB 可能包括所有包中的文件,而不仅仅是二进制文件。

【讨论】:

  • 但是您可能想要.app 目录下所有文件的大小,而不仅仅是可执行文件
【解决方案2】:

attributesOfItemAtPath 不适用于文件夹。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-26
    • 2012-06-05
    • 1970-01-01
    • 2011-11-17
    • 2022-08-13
    • 2021-11-26
    • 2013-07-28
    • 1970-01-01
    相关资源
    最近更新 更多