Aplikasi yang berbeda membutuhkan nilai spesifik untuk menyesuaikan dengan paradigma struktural. Misalnya, nomor Jaminan Sosial selalu sembilan digit. Beberapa laporan mengharuskan nomor ditampilkan dengan jumlah karakter tetap. Nomor urut, misalnya, biasanya dimulai dengan 1 dan meningkat tanpa akhir, sehingga ditampilkan dengan nol terkemuka untuk menghadirkan daya tarik visual.
Sebagai Programmer delphi, pendekatan Anda untuk menambahkan nomor dengan nol terkemuka tergantung pada kasus penggunaan khusus untuk nilai itu. Anda bisa memilih untuk menempelkan nilai tampilan, atau Anda bisa mengonversi angka menjadi string untuk penyimpanan dalam database.
Metode Tampilan Padding
Gunakan fungsi sederhana untuk mengubah bagaimana angka Anda ditampilkan. Menggunakan format untuk membuat konversi dengan memberikan nilai untuk panjangnya (total panjang hasil akhir) dan jumlah yang ingin Anda pad:
str: = Format ('%. * d, [panjang, angka])
Untuk mengisi angka 7 dengan dua nol terkemuka, masukkan nilai-nilai itu ke dalam kode:
str: = Format ('%. * d, [3, 7]);
Hasilnya adalah 007 dengan nilai yang dikembalikan sebagai string.
Konversi ke Metode String
Gunakan fungsi padding untuk menambahkan nol terkemuka (atau karakter lain) kapan saja Anda membutuhkannya dalam skrip Anda. Untuk mengonversi nilai yang sudah bilangan bulat, gunakan:
fungsi LeftPad (nilai: integer; panjang: integer = 8; pad: char = '0'): string; kelebihan;
mulai
hasil: = RightStr (StringOfChar (pad, panjang) + IntToStr (nilai), panjang);
akhir;
Jika nilai yang akan dikonversi sudah berupa string, gunakan:
fungsi LeftPad (nilai: string; panjang: integer = 8; pad: char = '0'): string; kelebihan;
mulai
hasil: = RightStr (StringOfChar (pad, panjang) + nilai, panjang);
akhir;
Pendekatan ini bekerja dengan Delphi 6 dan edisi selanjutnya. Kedua kode ini memblokir default ke karakter padding dari 0 dengan panjang tujuh karakter yang dikembalikan; nilai-nilai tersebut dapat dimodifikasi untuk memenuhi kebutuhan Anda.
Ketika LeftPad dipanggil, ia mengembalikan nilai sesuai dengan paradigma yang ditentukan. Misalnya, jika Anda menetapkan nilai integer ke 1234, memanggil LeftPad:
i: = 1234;
r: = LeftPad (i);
akan mengembalikan nilai string 0001234.