Applicazioni diverse richiedono valori specifici per conformarsi ai paradigmi strutturali. Ad esempio, i numeri di previdenza sociale sono sempre lunghi nove cifre. Alcuni report richiedono che i numeri vengano visualizzati con un numero fisso di caratteri. I numeri di sequenza, ad esempio, di solito iniziano con 1 e aumentano senza fine, quindi vengono visualizzati con zeri iniziali per presentare un richiamo visivo.
Come un Programmatore Delphi, il tuo approccio all'aggiunta di un numero con zeri iniziali dipende dal caso d'uso specifico per quel valore. Puoi semplicemente scegliere di inserire un valore di visualizzazione oppure puoi convertire un numero in una stringa per l'archiviazione in un database.
Visualizzazione del metodo di riempimento
Utilizzare una funzione semplice per modificare la modalità di visualizzazione del numero. Uso formato per effettuare la conversione fornendo un valore per lunghezza (la lunghezza totale dell'output finale) e il numero che si desidera pad:
str: = Formato ('%. * d, [lunghezza, numero])
Per riempire il numero 7 con due zeri iniziali, inserire tali valori nel codice:
str: = Formato ('%. * d, [3, 7]);
Il risultato è 007 con il valore restituito come stringa.
Converti in metodo String
Utilizzare una funzione di riempimento per aggiungere zero iniziali (o qualsiasi altro carattere) ogni volta che è necessario all'interno dello script. Per convertire valori che sono già numeri interi, utilizzare:
funzione LeftPad (valore: intero; lunghezza: intero = 8; pad: char = '0'): stringa; sovraccarico;
inizio
risultato: = RightStr (StringOfChar (pad, lunghezza) + IntToStr (valore), lunghezza);
fine;
Se il valore da convertire è già una stringa, utilizzare:
funzione LeftPad (valore: stringa; lunghezza: intero = 8; pad: char = '0'): stringa; sovraccarico;
inizio
risultato: = RightStr (StringOfChar (pad, length) + value, length);
fine;
Questo approccio funziona con Delphi 6 e successive edizioni. Entrambi questi blocchi di codice hanno come impostazione predefinita un carattere di riempimento 0 con una lunghezza di sette caratteri restituiti; tali valori possono essere modificati per soddisfare le tue esigenze.
Quando viene chiamato LeftPad, restituisce valori in base al paradigma specificato. Ad esempio, se imposti un valore intero su 1234, chiamando LeftPad:
i: = 1234;
r: = LeftPad (i);
restituirà un valore stringa di 0001234.