2010-09-16 8 views
10

¿Cómo puedo incluir un símbolo de porcentaje (%) en mi NSString?Incluir un '%' en un NSString?

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

El código anterior no incluye el último porcentaje de la cadena.

Respuesta

16

Carl tiene razón sobre el escape, pero solo no funcionará con el código que ha proporcionado. Falta un especificador de formato después del primer signo de porcentaje. Dada percentage es un doble, intente:

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

Nota del %.1f, para dar formato a un doble con un decimal. Esto da 45.5 %. Use %.f para no decimales.

Ver también http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/strings/Articles/formatSpecifiers.html

+0

Muchas gracias, no puedo creer que estaba dejando de lado el especificador de formato. Mirando el código por demasiado tiempo ayer. – TomH

12

Utilice %% para salir del signo de porcentaje.

+0

¡Gracias! Sin embargo, %% no funcionó, pero %%% lo hizo. Imagínate. – TomH

+1

@TomH, entonces todavía tienes algo mal con tu código - mira la respuesta @Mads para más detalles. –

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