Jak mogę mieć dwucyfrową liczbę całkowitą w ciągu, nawet jeśli jest ona mniejsza niż 10?
[NSString stringWithFormat:@"%d", 1] //should be @"01"
Odpowiedzi:
Uważam, że specyfikatory stringWithFormat są standardowymi specyfikatorami IEEE printf . Czy próbowałeś
[NSString stringWithFormat:@"%02d", 1];
Użyj ciągu formatu %02d. Określa to formatowanie liczby całkowitej o minimalnej szerokości pola wynoszącej 2 znaki i uzupełnianie sformatowanych wartości o 0, aby osiągnąć tę szerokość. Zobacz man fprintfwszystkie krwawe szczegóły specyfikatorów formatu.
Jeśli jednak formatujesz liczby do prezentacji użytkownikowi, naprawdę powinieneś używać NSNumberFormatter. Różne lokalizacje mają bardzo różne oczekiwania dotyczące formatowania liczb.
[NSString stringWithFormat:@"%00.02d", intValue]
To pomogło mi przekonwertować 1 na 01.