Nel precedente capitolo della nostra Guida a Delphi, abbiamo visto come accedere alle informazioni presenti nelle tabelle di un database. Tuttavia, le informazioni possono anche risiedere in file di testo, generalmente utilizzati per un accesso sequenziale. In questo capitolo, esploreremo come, in Delphi, sia possibile aprire un file di testo e accedere alle informazioni in esso contenute.
Indice
Preparazione del progetto
Iniziate creando un nuovo progetto in Delphi e inserite una Label sul Form. Inoltre, assicuratevi di avere un file di testo da leggere: create un file denominato provaf.txt e salvatelo nella directory principale del vostro disco.
Dichiarazione delle variabili
Delphi dispone di un tipo di dato specifico per la gestione di file di testo: TextFile. Pertanto, รจ necessario dichiarare una variabile di questo tipo per stabilire un collegamento al file fisico presente sul disco. La dichiarazione della variabile avviene cosรฌ:
var
testoFile: TextFile;
Successivamente, รจ importante dichiarare una variabile di tipo stringa per memorizzare una singola riga di testo letta dal file:
var
buffer: string;
Lettura del file di testo
Ora procediamo alla parte operativa: inserite il seguente codice nella procedura TFormCreate del vostro progetto:
begin
AssignFile(testoFile, 'c:\provaf.txt');
Reset(testoFile);
label1.Caption := '';
while not EOF(testoFile) do
begin
ReadLn(testoFile, buffer);
label1.Caption := label1.Caption + buffer + #13;
end;
CloseFile(testoFile);
end;
In questo codice, la funzione AssignFile associa il file fisico alla variabile di tipo TextFile. Successivamente, il file viene aperto utilizzando la funzione Reset.
Per leggere tutte le righe del file, utilizziamo l’istruzione ReadLn, che riceve come argomenti la variabile che punta al file e quella stringa in cui memorizzare una riga alla volta. Il contenuto in ciascuna riga viene poi concatenato all’elemento Label tramite l’operatore di concatenazione.
Il testo completo verrร visualizzato nella Label. L’intero processo avviene all’interno di un ciclo while, che continui finchรฉ non si raggiunge la fine del file, controllata dalla funzione EOF.
Al termine della lettura, il file viene chiuso con l’istruzione CloseFile, completando in tal modo il processo di apertura e lettura del file di testo.
Esempi e Considerazioni Finali
ร possibile estendere la funzionalitร per gestire errori, ad esempio, con un controllo per verificare se il file esiste prima di tentare di aprirlo. Ecco un esempio di codice che implementa questo controllo:
if FileExists('c:\provaf.txt') then
begin
AssignFile(testoFile, 'c:\provaf.txt');
Reset(testoFile);
// Codice per la lettura come prima
end
else
begin
ShowMessage('Il file non esiste.');
end;
In conclusione, la lettura di file di testo in Delphi รจ un’operazione semplice che richiede la corretta gestione delle variabili e della logica di controllo. Attraverso questo esempio, si รจ compreso come accedere a dati esterni, il che รจ fondamentale in molte applicazioni pratiche.