2010-09-16 8 views
10

Comment puis-je inclure un symbole de pourcentage (%) dans mon NSString?Inclure un '%' dans un NSString?

[NSString stringWithFormat:@"Downloading (%1.0%)", percentage] 

Le code ci-dessus n'inclut pas le dernier pourcentage de la chaîne.

Répondre

16

Carl a raison à propos de l'échappement, mais il ne fonctionnera pas seul avec le code que vous avez donné. Il vous manque un spécificateur de format après le premier signe de pourcentage. Étant donné percentage est double, essayez:

[NSString stringWithFormat:@"Downloading (%.1f %%)", percentage]; 

Notez le %.1f, pour mettre en forme une double avec une décimale. Cela donne 45.5 %. Utilisez %.f pour aucune décimale.

Voir aussi http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/strings/Articles/formatSpecifiers.html

+0

Merci beaucoup - je ne peux pas croire que je laissais tomber le spécificateur de format. En regardant le code depuis trop longtemps hier. – TomH

12

Utilisez %% pour quitter le signe de pourcentage.

+0

Merci! Cependant, %% n'a pas fonctionné mais %%% l'a fait. Allez comprendre. – TomH

+1

@TomH, alors vous avez encore quelque chose de mal avec votre code - consultez la réponse @Mads pour plus de détails. –

2
[NSString stringWithFormat:@"Downloading (%g%%)",  percentage];