2013-11-01 5 views
0

특정 소수 자릿수가 있어야하는 float 값이 있습니다. 소수 자릿수는 변수에 저장됩니다.Objective C에서 두 개의 매개 변수를 사용하여 문자열 서식 지정

self.numberTextField.text = [NSString stringWithFormat:@"%.%df",result, [[NSUserDefaults standardUserDefaults] boolForKey:@"decimalPlaces"]]; 

내 문제는 내가 올바른 방법은 % F와 % d 개 지정자를 결합하는 방법을 모르겠입니다 : 여기

코드의 라인입니다. 아이디어가 있으십니까?

답변 해 주셔서 감사합니다.

답변

0

내가 먼저 소수점 원하는 번호의 서식 첨부 캐릭터 라인을 만드는 2 단계

에서이 작업을 수행해야합니다 생각 :

NSString *format = [NSSString stringWithFormat:@"%%.%if", numberOfPlaces]; 

%%는 일부에 불과하므로 이스케이프 비율입니다 = 내가, 즉 numberOfPlaces은 = 2 형식을 줄 것이다 %가됩니다 형식으로 대체됩니다 @ "%를. 2F"그럼

당신이 형식 문자열은 최종 결과

를 만드는 것을 사용
+0

안녕하세요, 대단히 감사합니다. :-) – Jominho

1

별표 (*)로 필드 너비 또는 정밀도를 바꿀 수 있으며 매개 변수 목록에서 값을 가져옵니다.

int width = 5; 
int precision = 2; 
double value = 3.1415926; 
NSString* formattedNumber = [NSString stringWithFormat: @"%*.*f", width, precision, value]; 

http://pubs.opengroup.org/onlinepubs/009695399/functions/printf.html

또한 NSNumberFormatter을 사용하는 것이 좋습니다. 국제화를 인식하는 이점이 있습니다.