-- nome : file_let.adb -- autore : Patelli Tommy -- data : 10.03.2001 -- scopo : lettura di un file di testo, conta parole with Ada.Text_IO, Ada.Integer_Text_IO; use Ada.Text_IO, Ada.Integer_Text_IO; procedure lettura is File_Let : FILE_TYPE; --definisco il file ch : CHARACTER; caratteri: INTEGER:= 0; righe : INTEGER:= 0; spazi : INTEGER:= 0; begin put("Lettura del file:"); new_line(2); open(File => File_Let, --apro un file Mode => In_File, Name =>"C:\Documenti\TOMMY\Programmi_ADA\prova.txt"); while not end_of_file(File_Let) loop --ciclo fino alla fine file while not end_of_line(File_Let) loop --ciclo fino alla fine riga Get(File_Let, ch); --leggo un carattere if ch = ' ' then --verifico se é uno spazio spazi:= spazi+1; --incremento se é spazio Get(File_Let, ch); --lettura di un altro car if ch /= ' ' then --solo se é una lettera put(" "); --aggiungo uno spazio end if; end if; Put(ch); --scrivo un carattere caratteri:= caratteri+1; --incremento carattere end loop; skip_line(File_Let); --passa alla prossima riga New_line; righe:= righe+1; --incremento riga end loop; new_line; put("Nel file ci sono "); put(caratteri, 0); --scrivo quanti caratteri put(" caratteri"); new_line; put("Nel file ci sono "); put(righe, 0); --scrivo quante righe put(" righe"); new_line; put("Nel file ci sono "); put(spazi+righe, 0); --scrivo conta parole put(" parole"); close(File_Let); end lettura;