[iOS] 1,024.67 과 같은 표현하기

천단위로 콤마를 찍고 소수점 2째만 표시하기
보통 숫자는 이런식으로 표시를 많이 한다.

이를 표현하기 위해서
StrintWithFormat(@"%#,###.2f", 대상 숫자)

위와 같이 하면 될 줄 알았으나 안된다. 흑흑

iOS 는 이를 위해 별도의 방법을 제공하고 있다.
NSNumberFormatter 가 그것이다.

NSNumberFormatter *numberFormatter = [NSNumberFormatter new];
[numberFormatter setGroupingSeparator:@","];
[numberFormatter setGroupingSize:3];
[numberFormatter setUsersGroupingSeparator:YES];
[numberFormatter setDecimalSeparator:@"."];
[numberFormatter setNumberStyle:NsNumberFormatterDecimalStyle];
[numberFormatter setMaximumFractionDigits:2];

이제 사용은
label.text = [NSString StringWithFormat:@"%@", [numberFormatter stringFromNumber:[NSNumber numberWithFloat:1024.6789]]];

결과가 1,024.67 로 나오면 성공이다.

댓글

이 블로그의 인기 게시물

한글 2010 에서 Ctrl + F10 누르면 특수문자 안뜰 때

아이폰에서 RFID 사용하는 방법

VCC 와 GND 는 무엇일까?