2010-07-21 3 views
1

J'ai un tas de ressources - images, pour être précis - qui sont tous coincés dans un groupe de ressources via XCode.iPhone/iOS: Comment lister tous les fichiers d'un groupe de ressources?

Je sais comment charger un fichier d'image spécifique à l'intérieur de ce groupe de ressources en spécifiant le nom de fichier et en utilisant Accès directs pour spécifier le « chemin » au groupe il se trouve.

Mais est-il possible d'obtenir (programatically) une liste de tous les fichiers dans un certain groupe? L'application que je suis en train de créer affiche une image aléatoire parmi toutes celles qui se trouvent dans un dossier spécifique. Bien que je puisse évidemment simplement créer un tableau codé en dur contenant une liste de tous ces fichiers, il serait très pratique de pouvoir ajouter d'autres fichiers en les déposant dans le dossier.

donc: Peut-il être fait?

Merci!

Répondre

6

Qu'en est-il en utilisant la méthode pathsForResourcesOfType:inDirectory: de la classe NSBundle?

Il vous retourner un NSArray avec le chemin des fichiers correspondant au type donné.

+0

C'est exactement ce que je cherchais. Merci!! – DanM

-1

Essayez ceci:

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

    NSFileManager *manager = [NSFileManager defaultManager]; 
    NSArray *fileList = [manager contentsOfDirectoryAtPath:documentsDirectory error:nil]; 

    //--- Listing file by name sort 
    NSLog(@"\n File list %@",fileList); 


//---- Sorting files by extension 

     NSArray *filePathsArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:documentsDirectory error:nil]; 
     NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF EndsWith '.png'"]; 
     filePathsArray = [filePathsArray filteredArrayUsingPredicate:predicate]; 
     NSLog(@"\n\n Sorted files by extension %@",filePathsArray);