У меня есть класс, который содержит две строки, одну, которая отражает текущий год, и одну, которая представляет некоторое значение. Эти поля объединяются на основе формата (использует string.format), указанного пользователем. ВАЖНО: пользователь вводил данные, которые раньше создавались, поэтому они всегда были целыми числами, и нам не пришлось об этом беспокоиться.
Наш формат по умолчанию: "{0} - {1: 000}". Однако теперь, когда указанные пользователем данные являются строкой, они не хотят соответствующим образом форматировать. Вот пример:
Пользователь вводит 12 по мере необходимости. При форматировании вместо отображения 2011-0012 отображается только 2011-12. Как я могу убедиться, что 0 добавляются без каких-либо сумасшедших циклов, которые будут добавлять 0 или пытаться разобрать число (при условии, что это число. Должно быть достаточно только 0, чтобы равняться строке длины 4)?
Вот что я пробовал в формате:
"{0} - {1: 0000}" -> исходный формат, когда пользователь был вынужден вводить числа.
"{0} - {1: D4}"
"{0} - {1: N4}"