C#: leggere file di testo con StreamReader

3 Luglio 2023

La classe "StreamReader" fa parte del namespace "System.IO" ed è utilizzata per leggere i dati da un flusso di input, come ad esempio un file di testo. Fornisce metodi per la lettura di caratteri, linee di testo o blocchi di testo da un flusso di dati.

Ecco un esempio di utilizzo della classe "StreamReader" per leggere il contenuto di un file di testo:

using System;
using System.IO;

class Program
{
    static void Main()
    {
        string filePath = "test.txt";

        using (StreamReader reader = new StreamReader(filePath))
        {
            string line;
            while ((line = reader.ReadLine()) != null)
            {
                Console.WriteLine(line);
            }
        }
    }
}

In questo esempio, il costruttore della classe "StreamReader" prende il percorso del file come argomento e crea un oggetto "StreamReader" che rappresenta il flusso di input dal file specificato. Utilizzando il metodo "ReadLine()", leggiamo ogni riga del file fino a quando non raggiungiamo la fine del file, stampando il contenuto sulla console.

L'utilizzo del costrutto "using" assicura che la risorsa (in questo caso l'oggetto "StreamReader") venga correttamente rilasciata alla fine del blocco, garantendo una gestione sicura delle risorse.

Quindi, la classe "StreamReader" è una componente chiave nel leggere e interpretare i dati da un flusso di input, come un file di testo.

Un altro esempio

Ecco un altro esempio di utilizzo della classe StreamReader in C# per leggere il contenuto di un file di testo:

using System;
using System.IO;

class Program
{
    static void Main()
    {
        try
        {
            // Percorso del file di testo da leggere
            string filePath = "path_del_tuo_file.txt";

            // Creazione di un'istanza di StreamReader per leggere il file
            using (StreamReader sr = new StreamReader(filePath))
            {
                string line;

                // Legge il file riga per riga fino alla fine
                while ((line = sr.ReadLine()) != null)
                {
                    // Stampa ogni riga letta sulla console
                    Console.WriteLine(line);
                }
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("Si è verificato un errore durante la lettura del file: " + e.Message);
        }
    }
}

In questo esempio, viene creato un'istanza di StreamReader passando il percorso del file di testo come parametro al costruttore. Successivamente, viene utilizzato il metodo ReadLine() per leggere ogni riga del file fino alla fine. Ogni riga viene quindi stampata sulla console. Infine, l'uso del blocco using assicura che la risorsa StreamReader venga correttamente rilasciata alla fine dell'utilizzo.

È importante gestire eventuali eccezioni che potrebbero verificarsi durante la lettura del file, ad esempio se il file non esiste o non ha le autorizzazioni di accesso necessarie. Nel codice di esempio, viene catturata un'eccezione generica e viene visualizzato un messaggio di errore in caso di problemi. Assicurati di sostituire "path_del_tuo_file.txt" con il percorso effettivo del tuo file di testo da leggere.

Articoli recenti

Commenti recenti

  1. Massimiliano Ferretti su I Commenti

    Mi permetto di aggiungere una mia considerazione personale che ho riportato dall'utilizzo di C#. Personalmente mi piace commentare funzioni e…

  2. Personalmente ritengo che utilizzare git porti sempre dei vantaggi anche per lo sviluppo solo. Già solo la possibilità di fare…

  3. ciao, il link a discord non è piu valido, vorrei utilizzare il materiale che hai pubblicato tempo fa, come faccio?

"

Itamde è anche una scuola di programmazione online.

Itamde

Impara ciò che desideri, al tuo ritmo

0 Commenti

Potrebbe interessarti anche...

videogiochi

I migliori plugin per velocizzare lo sviluppo di un videogioco

Lo sviluppo di un videogioco è un processo lungo e complesso. Fortunatamente, i motori di gioco moderni dispongono di ecosistemi di plugin ricchi che permettono di risparmiare tempo prezioso. Piuttosto che programmare tutto da zero, gli sviluppatori accorti si...

Game Developer

Come ottimizzare un gioco per diverse piattaforme

Sviluppare un gioco per una sola piattaforma è già una sfida di per sé. Portarlo su diverse — PC, console, mobile, persino browser web — moltiplica i vincoli tecnici e le decisioni da prendere. Eppure, il multi-piattaforma è diventato la norma per massimizzare il...

webdesign italia

Gli errori comuni nella creazione di un sito web (e come evitarli)

Creare un sito web può sembrare semplice nel 2025, con la moltitudine di strumenti disponibili. Tuttavia, molti progetti falliscono o sottoperformano a causa di errori ricorrenti che anche sviluppatori esperti commettono. In questo articolo, esaminiamo gli errori più...

Rimani aggiornato sulle ultime notizie e novità

Accedi ai contenuti riservati

Scopri il dietro le quinte dei nostri progetti, risorse esclusive e lo stato di avanzamento delle nostre creazioni in tempo reale.

Iscriviti alla newsletter

Ricevi le nostre notizie, le nostre riflessioni creative e le novità dell'atelier direttamente nella tua casella di posta elettronica.

Seguici

Unisciti alla nostra community sui social network per seguire i nostri progetti quotidiani e interagire con noi.