Kaip pridėti pirmaujančius nulius prie skaičiaus („Delphi“ formatas)

Skirtingoms programoms reikia specifinių verčių, kad atitiktų struktūrines paradigmas. Pavyzdžiui, socialinio draudimo numeriai visada yra devynių skaitmenų. Kai kuriose ataskaitose reikalaujama, kad numeriai būtų rodomi su fiksuotu simbolių kiekiu. Pavyzdžiui, eilės numeriai paprastai pradedami skaičiumi nuo 1 ir pridedami be pabaigos, todėl jie pateikiami su nuliais, nurodantiais vaizdinį patrauklumą.

Kaip „Delphi“ programuotojas, jūsų metodas pridėti skaičių su nuliais priešais tai priklauso nuo konkretaus tos vertės naudojimo atvejo. Galite tiesiog pasirinkti paryškinti rodomą reikšmę arba galite konvertuoti numerį į eilutę saugojimui duomenų bazėje.

Ekrano padėklo metodas

Norėdami pakeisti savo skaičiaus rodymo būdą, naudokite tiesioginę funkciją. Naudokite formatas atlikti konvertavimą pateikiant ilgio (bendras galutinės išvesties ilgis) ir skaičius, kurį norite patrinti:

str: = formatas ('%. * d, [ilgis, skaičius])

Norėdami pažymėti skaičių 7 dviem nuliais priešais, įkiškite šias reikšmes į kodą:

instagram viewer
str: = formatas ('%. * d, [3, 7]);

Rezultatas yra 007 kurių vertė grąžinta kaip eilutė.

Konvertuoti į styginių metodą

Naudokite užpildymo funkciją, kad pridėtumėte nulius (arba bet kurį kitą simbolį), kai jums to reikia scenarijuje. Norėdami konvertuoti reikšmes, kurios jau yra sveikieji skaičiai, naudokite:

funkcija „LeftPad“ (reikšmė: sveikasis skaičius; ilgis: sveikas skaičius = 8; padas: char = '0'): eilutė; perkrova; 

prasideda

 rezultatas: = RightStr (StringOfChar (padėklas, ilgis) + IntToStr (reikšmė), ilgis); 

galas;

Jei konvertuotina vertė jau yra eilutė, naudokite:

funkcija LeftPad (reikšmė: eilutė; ilgis: sveikas skaičius = 8; padas: char = '0'): eilutė; perkrova;

prasideda

 rezultatas: = RightStr (StringOfChar (padėklas, ilgis) + reikšmė, ilgis);

galas;

Šis požiūris tinka Delfi 6 ir vėlesni leidimai. Abu šie kodo blokai pagal nutylėjimą yra „padding“ simbolis 0 kurių ilgis yra septyniasdešimt raktų; šios vertybės gali būti pakeistos, kad atitiktų jūsų poreikius.

Kai iškviečiama „LeftPad“, ji grąžina reikšmes pagal nurodytą paradigmą. Pvz., Jei nustatysite sveikąją skaičių iki 1234, paskambinę „LeftPad“:

i: = 1234;
r: = „LeftPad“ (i);

grąžins eilutės reikšmę 0001234.