unsigned long intを、3 桁ごとにコンマでフォーマットされ、小数点も末尾のゼロもない NSStringに変換したいと考えています。NSNumberFormatter を使用してコンマを問題なく NSString に入れることができますが、何らかの理由で小数点とゼロを取り除くことができません。
これは私のコードです:
NSNumberFormatter *fmtr;
unsigned long int intToBeDisplayed;
intToBeDisplayed = 1234567890;
fmtr = [[[NSNumberFormatter alloc] init] autorelease];
[fmtr setUsesGroupingSeparator:YES];
[fmtr setGroupingSeparator:@","];
[fmtr setGroupingSize:3];
[fmtr setAlwaysShowsDecimalSeparator:NO];
NSLog([fmtr stringFromNumber:[NSNumber numberWithUnsignedLong:intToBeDisplayed]]);
ログには「1,234,567,890.00」が表示され、適切にカンマが追加されますが、残念ながら不要な「.00」も追加されます。unsigned long intの代わりにintを使用してこのコンストラクトを試してみましたが、整数値は小さく、さまざまなブログの他のコンストラクトはすべて役に立ちませんでした。NSString から小数点と末尾のゼロを取得する方法についての提案に非常に感謝しています。
私は Objective-C の初心者であり、この問題を解決しようとして目のかすみ症候群に関して古参になっていますが、Objective-C で学んだ小さな教訓と成功が大きな喜びの源であるその段階にいます。 .