In breve: Un file di testo contiene solo caratteri leggibili. Si usa per salvare dati semplici e configurazioni.
Cosa è un file di testo
Un file di testo è un documento che contiene caratteri leggibili dall'utente. Non contiene formattazione come grassetto o colori. Ogni carattere è codificato secondo uno standard, ad esempio UTF-8.
Pensa a un foglio di quaderno con sole lettere e numeri. Non ci sono immagini né disegni. Solo testo puro, riga dopo riga.
I file di testo hanno spesso estensione .txt. Anche file come .csv, .html e .json sono file di testo.
Come funziona la lettura e scrittura
Un programma può aprire un file di testo per leggerlo o scriverlo. L'apertura collega il file al programma tramite un canale chiamato flusso. Dopo l'uso, il file deve essere chiuso.
La lettura avviene di solito riga per riga. La scrittura aggiunge testo in fondo oppure sovrascrive il contenuto. Ogni riga finisce con un carattere speciale di fine riga.
Esistono due modalità principali. La modalità lettura non modifica il file. La modalità scrittura cambia o crea il contenuto.
Esempi pratici
Esempio 1: una rubrica telefonica. Salvi nome e numero su righe diverse in un file contatti.txt.
Esempio 2: un log di gioco. Il programma scrive ogni partita in fondo al file partite.txt.
In Python si scrive così:
with open("contatti.txt", "r", encoding="utf-8") as f:
for riga in f:
print(riga.strip())
Questo codice apre il file, legge ogni riga e la mostra a schermo. Il comando with chiude il file automaticamente alla fine.
Per scrivere si usa la modalità "w" al posto di "r". Attenzione: la modalità "w" cancella il contenuto precedente.
Parole difficili
- Carattere: simbolo come lettera, numero o segno di punteggiatura.
- Codifica: regola che associa ogni carattere a un numero.
- UTF-8: codifica standard che supporta quasi tutte le lingue del mondo.
- Flusso: canale che collega il programma al file aperto.
- Estensione: parte finale del nome file, indica il tipo.
- Log: file che registra eventi in ordine di tempo.
Riferimenti
- Norma: Riordino degli istituti tecnici
- Obiettivo formativo coperto: ob.tecnico-informatica-telecomunicazioni.informatica.cl3.file-testo.01