大きな数をコンマでフォーマットするための数値フォーマッターを作成するにはどうすればよいですか?
たとえば、2389378.289は2,389,378.289になります。
常に小数点以下3桁であるとは限らず、常に小数点がまったくないことに注意してください。NSNumberFormatterを使用してください。
ありがとう!
大きな数をコンマでフォーマットするための数値フォーマッターを作成するにはどうすればよいですか?
たとえば、2389378.289は2,389,378.289になります。
常に小数点以下3桁であるとは限らず、常に小数点がまったくないことに注意してください。NSNumberFormatterを使用してください。
ありがとう!
そのための形式はです@"#,##0.###"
。フォーマット文字列を作成する方法の完全な説明については、Unicode数値フォーマットガイドを参照してください。
(これは、コンマとドットが逆になっているロケール、または他の文字が使用されているロケールでも正しく機能することに注意してください。)
NSNumberFormatter *fmt = [[[NSNumberFormatter alloc] init] autorelease];
[fmt setAlwaysShowsDecimalSeparator:NO];
[fmt setFormat:@"#,##0.###"];
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:35.424252]]);
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:21.3]]);
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:10392425]]);
Chuckが提供した形式は、小数点以下3桁までをサポートします。3未満の番号がある場合、それらは表示されません。チャックは、Unicode数値フォーマットガイドを参照したいということも正しいです。数値フォーマットの問題には非常に役立ちます。