2012-04-09 5 views
0

は、どのように私はこれだけの出力(ヌル)fileModificationDate読書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); 

     } 
    } 

にアクセスします。最終的には、2つのファイルのfileModificationDateを比較したいと思います。どうすればできますか?

答えて

0

NSFileModificationDateは、NSStringではなく、NSDateインスタンスを返します。参照:

NSFileModificationDate

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で、言ったように。

+0

ありがとう、それは動作します:) – user1321964