2010-06-24 4 views
1

Je reçois un NSString d'un dictionnaire qui doit avoir un nombre entier variable quelque chose comme:En utilisant NSString stringWithFormat: avec une chaîne de NSDictionary

"You have %i objects." 

Comment puis-je mettre la valeur entière calculée dans la chaîne ? Je voudrais faire quelque chose comme

NSString *string = [NSString stringWithFormat:[dictionary objectForKey:@"string"] 

Mais je ne sais pas comment passer dans un argument stringWithFormat lorsque le% i est niché dans le dictionnaire.

Remarque: Je peux contourner ce problème en utilisant stringByReplaceOccurenceOfString, mais j'aimerais savoir s'il est possible de le faire de la manière ci-dessus.

+0

Je ne comprends pas votre question. Pouvez-vous me montrer quelques exemples des données du dictionnaire et la sortie attendue – vodkhang

Répondre

3

Vous pouvez passer une séparées par des virgules liste des arguments à des méthodes comme stringWithFormat:

NSString *string = [NSString stringWithFormat: 
    [dictionary objectForKey:@"string"] , 7 , 8 , 9]; 

Seul le 7 serait utilisé dans votre chaîne de format d'échantillon.

+0

Merci! C'est ce que je faisais, et cela s'est avéré être l'une de ces périodes où le problème était entièrement ailleurs. – Jon

1

Vous pouvez y accéder en utilisant cette

NSString *string = [NSString stringWithFormat:[dictionary objectForKey:@"string"],YOURINTNUMBER]; 

Il travaillera

Questions connexes