0

fileModificationDateにアクセスするにはどうすればよいですか

    NSString *docsDir = [NSHomeDirectory() stringByAppendingPathComponent:
                         @"TempiPad"];
    NSFileManager *localFileManager=[[NSFileManager alloc] init];
    NSDirectoryEnumerator *dirEnum =
    [localFileManager enumeratorAtPath:docsDir];
    NSString *file;

    // List all files in docsDir
    while (file = [dirEnum nextObject]) {
        NSLog(@"File = %@",file);
        NSError *attributesError = nil;
        NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:file error:&attributesError];

        NSString *fileModificationDate = [fileAttributes objectForKey:NSFileModificationDate];
        NSLog(@"ModDate = %@",fileModificationDate);

        } 
    }

これは(null)を出力するだけです。最終的には、2つのファイルのfileModificationDateを比較したいのですが、どうすればよいでしょうか。

4

2 に答える 2

2

IIRC では、ファイル名をディレクトリ パスに追加する必要があります。何かのようなもの:

while (file = [dirEnum nextObject]) {
    NSLog(@"File = %@",file);
    NSError *attributesError = nil;
    file = [docsDir stringByAppendingPathComponent:file];
    NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:file error:&attributesError];

    NSDate *fileModificationDate = [fileAttributes objectForKey:NSFileModificationDate];
    NSLog(@"ModDate = %@",fileModificationDate);

    } 
}

そして、より多くの緊張が言ったように、それNSFileModificationDateNSDateではなくNSStringです。

于 2012-04-09T14:14:30.007 に答える