Come leggere un file di testo in C#

Come leggere un file di testo in C#
Leggere un file di testo in C# è un'operazione di base richiesta in molte applicazioni. La lettura di file di testo in C# consente agli sviluppatori di creare applicazioni flessibili e che possano adattarsi facilmente alle modifiche nei dati che elaborano. Leggendo i file di testo, i programmi possono essere progettati per gestire diversi tipi di dati senza dover essere ricompilati o modificati, questo articolo discuteremo dei due metodi più utilizzati per la lettura di un file di testo in C#.

Come leggere un file di testo in C#

Lo scopo di leggere un file di testo in C# è recuperare informazioni dal file ed elaborarle all'interno di un programma C#. I file di testo sono comunemente usati per archiviare i dati che devono essere letti ed elaborati da un programma, come file di configurazione, file di registro o file di dati, ecco i due modi per leggere un file di testo in C#:

  • Tramite file.ReadAllText
  • Attraverso la classe StreamReader

Tramite file.ReadAllText

Questa funzione legge l'intero file di testo in una volta e lo restituisce come stringa, ecco un esempio di come utilizzare questa funzione per leggere il file di testo in C#:

usando il sistema;
Utilizzo del sistema.Io;
Spazio Names ReadingTextFile

Programma di classe

statico void main (string [] args)

// Dai il percorso del file di testo
String FilePath = @"C: \ Users \ Aaliy \ OneDrive \ Desktop \ Test File.TXT";
// Lettura del file di testo
String FileContent = File.ReadAllText (FilePath);
// Visualizza il contenuto del file di testo
Console.WriteLine (FileContent);


Ecco la spiegazione del codice di esempio che abbiamo fornito sopra:

1: usando il sistema; e usando il sistema.Io: Queste righe includono gli spazi dei nomi necessari per utilizzare il file.Funzione reaftalltext (). Lo spazio dei nomi del sistema contiene la classe console utilizzata per visualizzare il contenuto del file di testo e il sistema.Lo spazio dei nomi contiene la classe file che legge il file di testo.

2: Spazio Names ReadingTextFile: La dichiarazione dello spazio dei nomi definisce un ambito per il programma e aiuta a organizzare il codice.

3: programma di classe: La dichiarazione di classe definisce un progetto per un oggetto e contiene i dati e il comportamento dell'oggetto.

4: statico void main (string [] args): Il metodo principale è definito come un metodo statico, il che significa che può essere chiamato senza creare una classe. Il metodo principale è dichiarato vuoto perché non restituisce un valore. Il parametro String [] Args è un array di stringhe che può essere passato al programma quando esegue.

5: String FilePath = @"C: : \ Users \ Aaliy \ OneDrive \ Desktop \ Test File.TXT": Questa riga dichiara un percorso del file variabile stringa e assegna il percorso del file del file di testo ad esso. Il simbolo @ prima del percorso del file consente l'uso di caratteri di escape nella stringa.

6: String FileContent = File.ReadAllText (FilePath): Questa riga utilizza il file.Metodo ReadAllText per leggere l'intero file di testo e archiviare il contenuto del file di testo nella variabile String FileContent. La variabile FilePath viene passata come parametro alla funzione per specificare la posizione del file di testo.

7: console.WriteLine (FileContent): Questa riga utilizza la console.Funzione WriteLine () che visualizza il contenuto del file di testo sulla console. IL Filecontent La variabile viene passata come parametro alla console.Metodo WriteLine per specificare il contenuto da visualizzare.

Produzione

L'immagine seguente visualizza l'output che contiene il contenuto scritto nel file di testo:

Attraverso la classe StreamReader

La classe StreamReader fa parte del sistema.Spazio dei nomi IO e viene utilizzato per leggere i file di testo in C#. La classe StreamReader legge un file di testo una riga alla volta e legge un file di testo dall'inizio alla fine, ecco un codice di esempio per esso:

usando il sistema;
Utilizzo del sistema.Io;
Spazio Names ReadingTextFile

Programma di classe

statico void main (string [] args)

// Specifica il percorso del file di testo
String FilePath = @"C: \ Users \ Aaliy \ OneDrive \ Desktop \ Test File.TXT";
// Apri il file di testo
Utilizzo (StreamReader StreamReader = new StreamReader (FilePath))

// Leggi l'intero file di testo
Mentre (!StreamReader.Fine del flusso)

String riga = StreamReader.Linea di lettura();
// Visualizza ogni riga del file di testo
Console.WriteLine (linea);




Ecco la spiegazione delle differenze chiave nel codice che abbiamo usato nel metodo precedente:

1: usando il sistema; e usando il sistema.IO: Queste righe includono gli spazi dei nomi necessari per utilizzare la classe StreamReader. Lo spazio dei nomi del sistema contiene la classe console utilizzata per visualizzare il contenuto del file di testo e il sistema.Lo spazio dei nomi contiene la classe StreamReader per leggere il file di testo.

2: Utilizzo (StreamReader StreamReader = new StreamReader (FilePath)): Questa riga apre il file di testo usando la classe StreamReader. L'istruzione Utilizzo dispone automaticamente dell'oggetto StreamReader dopo che il blocco del codice all'interno dell'istruzione Using è stato eseguito. La variabile FilePath viene passata come parametro al costruttore StreamReader per specificare la posizione del file di testo.

3: while (!StreamReader.Fine del flusso): Questa riga crea un ciclo while che continua ad eseguire fintanto che la proprietà endofstream dell'oggetto StreamReader è falsa. La proprietà endofstream restituisce vera quando è stata raggiunta la fine del file di testo.

4: String Line = StreamReader.Linea di lettura(): Questa riga utilizza la classe StreamReader per leggere una riga del file di testo e memorizzare la riga nella variabile della stringa di riga.

Produzione

L'immagine seguente visualizza l'output che contiene il contenuto scritto nel file di testo:

Conclusione

Leggere un file di testo in C# è un'attività semplice che può essere eseguita utilizzando la classe StreamReader o il file.Metodo ReadAllText. Scegli il metodo che si adatta meglio alle tue esigenze poiché entrambi sono descritti con un esempio.