2012-08-15 58 views
2

我有一些文件保存在我的NSDocumentsDirectory中,我如何獲取這些文件的名稱,然後在uitableview中顯示這些名稱?如何獲取存儲在NSDocumentsDirectory中的文件的名稱?

我只想檢索對象的名稱作爲NSString,我能夠檢索文件作爲對象,而不是他們的名字。

這裏是它的代碼:增加一個(在)環

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 

NSString *documentsDirectory = [paths objectAtIndex:0]; 

NSError * error; 
objectsAtPathArray = (NSMutableArray*)[[NSFileManager defaultManager] 
         contentsOfDirectoryAtPath:documentsDirectory error:&error]; 
[objectsAtPathArray removeObjectAtIndex:0]; 

最後一行是刪除.DS_Store文件

+0

加入(用於)循環並獲得成功, 爲(* NSString的filename在self.objectsAtPathArray){ cell.textLabel.text =文件名; } – 2012-08-15 18:48:49

+1

因此請將您的評論複製到上方,並將其過濾到您的答案中,然後提交。當你點擊複選框接受它時,這會阻止像我這樣的人審查看似沒有答案的問題,並且當你得到你批准答案的問題數量時,你是否有好處? – 2012-08-15 21:36:57

+0

我試過了。但在8小時前我無法回答自己的問題。因爲我沒有足夠的聲譽。我並沒有刪除這個問題,因爲我認爲它可能對其他人試圖找到相同的解決方案有用。 – 2012-08-16 14:28:53

回答

0

做的對我來說,

for (NSString *fileName in self.objectsAtPathArray){ 

    cell.textLabel.text = fileName; 
} 
2

試試這個,

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    objectsAtPathArray = [[[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:nil]mutableCopy]; 

    for(int i = 0; i < [objectsAtPathArray count]; i++) 
    { 
     if (![[objectsAtPathArray objectAtIndex:i]isEqualToString:@".DS_Store"]) 
     { 
     [NewArray addObject:[objectsAtPathArray objectAtIndex:i]]; 
      NSLog(@"NewArray=%@",[NewArray objectAtIndex:i]); 
     } 
    } 
0

這將工作正確的:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSFileManager *manager = [NSFileManager defaultManager]; 
NSArray *imageFilenames = [manager contentsOfDirectoryAtPath:documentsDirectory error:nil]; 

for (int i = 0; i < [imageFilenames count]; i++) 
    { 

    NSString *imageName = [NSString stringWithFormat:@"%@/%@",documentsDirectory,[imageFilenames objectAtIndex:i] ]; 

     if (![[imageFilenames objectAtIndex:i]isEqualToString:@".DS_Store"]) 
     { 
      UIImage *myimage = [UIImage imageWithContentsOfFile:imageName]; 
      UIImageView *imageView = [[UIImageView alloc] initWithImage:_myimage]; 
     } 
    } 
相關問題