web-dev-qa-db-fra.com

obtenir la longueur / le nombre de NSArray - Objectif C

Eh bien, j'ai examiné des problèmes similaires sur le site, mais je n'ai pas trouvé de solution jusqu'à présent, je dois donc faire quelque chose de mal.

Essentiellement, j'importe un fichier texte, puis je divise chaque ligne en un élément d'un tableau. Puisque le fichier texte sera mis à jour, etc. Je ne connais pas tous la quantité exacte de lignes dans le fichier et donc le nombre d'éléments dans le tableau. Je sais que dans Java vous pouvez faire .length () etc. et soi-disant dans Objective C vous pouvez utiliser 'count' mais je n'ai aucune chance de retourner la longueur de mon tableau ... suggestions?

 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"allshows" 
                                                     ofType:@"txt"];
 NSString *fileString = [NSString stringWithContentsOfFile:filePath];

NSArray *lines = [fileString componentsSeparatedByString:@"\n"];  

NSUInteger *elements = [lines count];
NSLog(@"Number of Shows : ", elements);

et ce qui est produit n'est RIEN. comme dans "Nombre de spectacles:" - vide, comme si cela ne comptait même pas du tout.

Merci pour toute aide!

16
Didier

Il vous manque l'espace réservé pour la chaîne de format. Ça devrait être:

NSLog(@"Number of shows: %lu", elements);
16
omz

Vous devez utiliser un spécificateur de format pour imprimer un entier (%d):

NSLog(@"Number of Shows : %d", elements);
5
titaniumdecoy

En regardant votre autre article, il semble que vous soyez un développeur Java. Dans System.out de Java, vous ajoutez simplement les variables. Dans Objective-C, je vous suggère de regarder "les spécificateurs de format d'impression ". Objective-C utilise le même format.

0
darksky