Formatowanie stringa - zera przed liczbą a znak "#"

0

Cześć,
mam jakieś liczby typu int i chciałbym je zamienić na string w taki sposób, aby były poprzedzone zerami. Mam jednak wątpliwość jak działa formatowanie z wykorzystaniem znaku "#" w metodzie int.ToString().
Zakładając, ze max liczba to 9999 to powinien zrobić operację liczba.ToString("0###") lub liczba.ToString("000#") - obie wersje działają tak samo (prawidłowo), ale nie wiem czy obie są prawidłowe :-/. Dodatkowo wersja liczba.ToString("####") już nie dodaje zer przed liczbę.
Mam więc pytanie jaka jest między nimi różnica i jak jest prawidłowo?
Z góry dziękuję.

2

Rozważ to:

Console.WriteLine((37778.32).ToString("####,###0.##"))
// 37,778.32

- cyfra lub nic

0 - cyfra lub 0 jak cyfry nie ma
, i . - separator miejsc tysięcznych i dziesiętnych

Jak widać na przykładzie # przydaje się jak trzeba modelować separatory.

Wydaje mi się że użycie 0### jest nieprawidłowe, lepiej napisać 0000.

0

Dziękuję @0xmarcin!
Pozostałym osobom również dziękuję, aczkolwiek wklejanie linków to przeważnie słaba forma pomocy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1