Как я могу иметь двузначное целое число в строке, даже если целое число меньше 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.