Показать полную графическую версию : Добавление нулей слева от числа
Jonik-Mnimonik
02-12-2008, 14:27
Мне нужно перевести integer в char и при этом добавить слева от числа нули.
Пример:
входные данные integer : 598
на выходе как стринг : 0000598
Есть ли такая функция?? И как это можно сделать.?
Jonik-Mnimonik,
входные данные integer : 598
на выходе как стринг : 0000598 »
Как таковых, функий преобразования чисел с символы в делфи (ну или паскале) нет.
Это связано с тем, что числа в памяти представлены в 16-чной системе. Если нужно преобразовать, то неободимо выделять в 16 чном коде порядки чисел и переписывать их в символы цифр.
Есть такие замечательные функции LPAD() и RPAD()
Тебе нужно воспользоваться функцией LPAD.
Эта функция добавляет нужный символ в нужном количестве в левую сторону строки.
Для твоего примера эта функция выглядет вот так:
SELECT LPAD(TO_CHAR(598),7,'0') FROM DUAL;
----
0000598
Хотья у меня сработал и без преобразования в char, т.е.
SELECT LPAD(598,7,0) FROM DUAL;
----
0000598
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.