-5

a string have money value

NSString *money = "123456789";

I want print money like 123,456,789

Girish
  • 4,692
  • 4
  • 35
  • 55
Mr_T
  • 9
  • 4
  • possible duplicate of [How to add commas to number every 3 digits in Objective C?](http://stackoverflow.com/questions/2233824/how-to-add-commas-to-number-every-3-digits-in-objective-c) – Martin R Jun 26 '13 at 07:09

3 Answers3

2

Replied by Nik

Use NSNumberFormatter.

Specifically

NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle]; // this line is important!

NSString *formatted = [formatter stringFromNumber:[NSNumber numberWithInteger:2000000]];

[formatter release];

By default NSNumberFormatter uses the current locale so the grouping separators are set to their correct values by default. The key thing is to remember to set a number style.

Please refer to these links

1- Link #one

2- Link #Two

Community
  • 1
  • 1
Digital Alchemist
  • 2,324
  • 1
  • 15
  • 17
0

Oneliners for the win

NSString *decNumberString =  [NSNumberFormatter localizedStringFromNumber:[NSNumber numberWithInteger:[str integerValue]]
                                                     numberStyle:NSNumberFormatterDecimalStyle];
Groot
  • 13,943
  • 6
  • 61
  • 72
0

try this:

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];   //here is money style... or or you can also set your other style
NSString *str = [formatter stringFromNumber:[NSNumber numberWithInt:123456789]];

and also refer following links...

  1. Objective-C: How to format string as $ Price
  2. Using NSNumberFormatter to format currency in output UILabel
Community
  • 1
  • 1
DharaParekh
  • 1,730
  • 1
  • 10
  • 17