2009-11-21 16 views
26

¿Es una forma incorporada de formato de cadena como $ price, p. Ej. 12345.45 convertido a $12,345.45?

+0

¿Qué tipo está llevando a cabo el número? – outis

Respuesta

65

Asumiendo que están utilizando cacao (o simplemente la Fundación), puede utilizar NSNumberFormatter y establecer su estilo a la divisa:

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
... = [formatter stringFromNumber:number]; 

Por defecto se utiliza la configuración regional de su sistema, aunque esto se puede cambiar y mucho de otras propiedades, consulte NSNumberFormatter API docs.

+0

Lo descubrí por mi cuenta. Gracias de todos modos :). – Mustafa

4

Suponiendo que el precio se mantiene en un flotante, es probable que desee +localizedStringWithFormat:.

NSString *priceString = [NSString localizedStringWithFormat:@"$ %'.2f",price]; 

Hmmm ... Apple dice que siguen el IEEE standard for printf, por lo que debe aceptar la 'bandera, pero no funciona en Tigre. NSNumberFormatter es.

+1

Agradable, mejor que bla bla bla respuestas anteriores! :) – orafaelreis

1

Usted necesita deshacerse de la ' carácter

Por lo tanto, sólo hay esto:

NSString *priceString = [NSString localizedStringWithFormat:@"$ %.2f", price]; 
0
NSString *formatedNumbers = [NSNumberFormatter localizedStringFromNumber:myNumber numberStyle:NSNumberFormatterCurrencyStyle]; 
Cuestiones relacionadas