Есть ли способ получить дату создания папки в Какао? - PullRequest
3 голосов
/ 09 декабря 2011

Я пытался использовать атрибуты NSFileManagerOfItemAtPath.Хорошо работает с файлами, но не с папками.Хотя в документации Apple они утверждали, что она должна работать с файлом или папкой.Но все, что я получаю, это нулевое значение, если я вызываю это для папок.

Код, который я использую:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDictionary *folderAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:somePath error:nil];

NSLog(@"Creation date: %@", [dateFormatter stringFromDate:[folderAttributes objectForKey:NSFileCreationDate]]);

Вывод для меня всегда нулевойМой "somePath" - это строка NSString с таким форматом:

file://localhost/Users/username/...

Мысли?Спасибо!

Ответы [ 2 ]

7 голосов
/ 09 декабря 2011

Если это путь, не используйте URL. Используйте путь:

/Users/username/dir

Кроме того, привыкните к параметру error, это действительно полезно.

NSError *error = nil;
NSDictionary *attr = [fm attributesOfItemAtPath:path error:&error];
if (error)
    NSLog(@"%@", error) /* at least */

Это тебе поможет. И если по какой-то причине вы этого не хотите, обратите внимание, что параметр является указателем на объект, поэтому вы можете использовать NULL вместо nil.

1 голос
/ 09 декабря 2011

somePath должен быть отформатирован как прямой путь POSIX - установите его в / Users / username / ... - это должно работать.

...