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