Строка формата, целое с ведущими нулями

Я использую этот код:

NSString* strName = [NSString stringWithFormat:@"img_00%d.jpg", pp];

и работает отлично, но если pp взял значение 10, например, я хочу получить img_010.jpg в результате, а не img_0010.jpg... как я могу отформатировать строку??

спасибо

Ответ 1

Используйте строку формата "img_%03d.jpg", чтобы получить десятичные числа с тремя цифрами и ведущими нулями.

Ответ 2

Для потомков: это работает с десятичными числами.

NSString *nmbrStr = @"0033620340000" ;
NSDecimalNumber *theNum = [[NSDecimalNumber decimalNumberWithString:nmbrStr]decimalNumberByAdding: [NSDecimalNumber one]] ;     
NSString *fmtStr = [NSString stringWithFormat:@"%012.0F",[theNum doubleValue]] ;

Хотя эту информацию трудно найти, она фактически документирована здесь во втором абзаце в разделе "Основы форматирования". Найдите символ%.

https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Strings/Articles/FormatStrings.html