2010-12-16 138 views
0

Quand souhaitez-NSSearchPathForDirectoriesInDomains sur iOS jamais revenir 0 chemins si je donne les résultats suivants:NSSearchPathForDiriesInDomains retourne le chemin vide?

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

NSLog(@"paths: %d", [paths count]); 

if ([paths count] > 0) 
{ 
    // path exists and is the 1st item in the array 
} 
else 
{ 
    // path doesn't exist. Under what conditions would it not exist? 
} 

Répondre

1

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

Ajouter le "s"

+0

Désolé, c'était une faute de frappe de ma part. J'étais curieux de savoir quand il y aurait 0 chemins (en utilisant le nom d'API correct) –

1

Je soupçonne que ce codage est juste défensif. Je ne vois pas pourquoi cet appel exact renverrait jamais 0 chemins, mais la méthode NSSearchPathForDiriesiesInDomains() pourrait faire avec différents paramètres qui lui sont passés. De plus, même si le chemin existe, les docs disent que cela ne garantit pas l'existence du répertoire réel, donc idéalement, vous devrez également faire un autre contrôle, même si pour NSDocumentDirectory je suspecte la plupart des gens, y compris moi-même, Supposons simplement qu'il sera là - ne peut pas voir pourquoi il ne serait pas ..

+0

[Il vient de renvoyer un tableau vide.] (Http://stackoverflow.com/questions/12938962/index-0-beyond-bounds-for- répertoire vide-array-while-to-the-documents) –

0

Je pense que ce n'est pas un accident là-bas. juste l'arrêt du compilateur à la mauvaise position.