2010-07-02 5 views
2

J'ai le code suivant qui extrait une chaîne d'un tableau de chaînes et divise la chaîne en deux parties.Division d'un NSString

NSString *temp = [tableViewData objectAtIndex:indexPath.row]; 
NSArray *tempArray = [temp componentsSeparatedByString: @"_"]; 
cell.textLabel.text = [tempArray objectAtIndex:1]; 

et la chaîne qui est ajouté est le suivant

newTitle = [NSString stringWithFormat:@"%d_%@",[Daily_QuoteViewController counter],title]; 
[plistArray addObject:newTitle]; 
[plistArray writeToFile:filepath atomically: YES]; 

qui ajoute un index et une chaîne. J'essaie de scinder cette chaîne dans la première section de code. mais essayer d'accéder à la deuxième partie de la chaîne à l'index 1 donne une erreur hors limites.

en raison de l'application Mettre fin exception uncaught 'NSRangeException', raison: '*** - [NSArray objectAtIndex:]: index 1 au-delà des limites [0 .. 0]'

Quel est le meilleur façon de diviser la chaîne afin d'utiliser les deux parties de la chaîne

fendu firstPart_secondPart

Merci à l'avance.

+1

Votre code est ok. Je suppose que la température ne tient pas une chaîne comme vous l'attendez - pouvez-vous vérifier cela? – Eiko

+0

temp est une chaîne. Je peux voir qu'il ajoute au tableau, il lit le tableau dans la vue de la table, mais lorsque vous essayez de diviser, et l'utiliser, je reçois une erreur hors limites. – jarryd

+0

Il trouve l'index 0, mais pas l'index 1, pour la seconde moitié de la chaîne. conseil s'il vous plaît. – jarryd

Répondre

0

Cela me semble bien. Pouvez-vous imprimer NSString temp? NSLog(@"%@", temp);

+0

J'ai trouvé l'erreur, la seule chaîne de test que j'avais dans le plist ne contenait pas "_". J'ai oublié de regarder là-bas. erreur stupide. merci pour votre temps tout. – jarryd