Различные приложения требуют определенных значений для соответствия структурным парадигмам. Например, номера социального страхования всегда состоят из девяти цифр. Некоторые отчеты требуют, чтобы числа отображались с фиксированным количеством символов. Например, порядковые номера обычно начинаются с 1 и увеличиваются без конца, поэтому они отображаются с начальными нулями для визуальной привлекательности.
Как Программист DelphiВаш подход к добавлению числа с ведущими нулями зависит от конкретного варианта использования этого значения. Вы можете просто дополнить отображаемое значение или преобразовать число в строку для хранения в базе данных.
Метод отступа
Используйте простую функцию, чтобы изменить способ отображения вашего номера. использование формат сделать преобразование, указав значение для длина (общая длина окончательного вывода) и число, которое вы хотите дополнить:
str: = Format ('%. * d, [длина, число])
Чтобы дополнить число 7 двумя ведущими нулями, вставьте эти значения в код:
str: = Format ('%. * d, [3, 7]);
Результат 007 со значением, возвращаемым в виде строки.
Преобразовать в строковый метод
Используйте функцию заполнения для добавления начальных нулей (или любого другого символа) в любое время, когда это необходимо в вашем скрипте. Чтобы преобразовать значения, которые уже являются целыми числами, используйте:
функция LeftPad (значение: целое число; длина: целое число = 8; pad: char = '0'): string; перегрузки;
начать
результат: = RightStr (StringOfChar (pad, длина) + IntToStr (значение), длина);
конец;
Если значение для преобразования уже является строкой, используйте:
функция LeftPad (значение: строка; длина: целое число = 8; pad: char = '0'): string; перегрузки;
начать
результат: = RightStr (StringOfChar (pad, length) + value, length);
конец;
Этот подход работает с Delphi 6 и более поздние издания. Оба эти кодовых блока по умолчанию имеют символ заполнения 0 длиной семь возвращенных символов; эти значения могут быть изменены в соответствии с вашими потребностями.
Когда вызывается LeftPad, он возвращает значения в соответствии с указанной парадигмой. Например, если вы установите целочисленное значение 1234, вызывая LeftPad:
i = 1234;
r: = LeftPad (i);
вернет строковое значение 0001234.