[objective-c] 한 자리 정수에서 두 자리 문자열 만들기

정수가 10보다 작더라도 문자열에 두 자리 정수를 어떻게 가질 수 있습니까?

[NSString stringWithFormat:@"%d", 1] //should be @"01"



답변

나는 stringWithFormat 지정자가 표준 IEEE printf 지정 자라고 믿습니다 . 시도해 보셨습니까

[NSString stringWithFormat:@"%02d", 1];


답변

형식 문자열을 사용합니다 %02d. 최소 필드 너비가 2자인 정수를 형식화하고 해당 너비를 충족하기 위해 형식화 된 값을 0으로 채우도록 지정합니다. man fprintf형식 지정자에 대한 자세한 내용은를 참조하십시오 .

하지만 사용자에게 표시하기 위해 숫자의 서식을 지정하는 경우 실제로 NSNumberFormatter. 로케일에 따라 숫자 형식 지정 방법에 대한 기대치가 크게 다릅니다.


답변

[NSString stringWithFormat:@"%00.02d", intValue]

이것은 1을 01로 변환하는 데 도움이됩니다.


답변