Hvordan lese en tekstfil i C#

Hvordan lese en tekstfil i C#
Å lese en tekstfil i C# er en grunnleggende operasjon som kreves i mange applikasjoner. Å lese tekstfiler i C# gjør det mulig for utviklere å lage applikasjoner som er fleksible og lett kan tilpasse seg endringer i dataene de behandler. Ved å lese tekstfiler kan programmer utformes for å håndtere forskjellige typer data uten å måtte kompileres eller endres, denne artikkelen, vil vi diskutere de to mest brukte metodene for å lese en tekstfil i C#.

Hvordan lese en tekstfil i C#

Hensikten med å lese en tekstfil i C# er å hente informasjon fra filen og behandle den i et C# -program. Tekstfiler brukes ofte til å lagre data som må leses og behandles av et program, for eksempel konfigurasjonsfiler, loggfiler eller datafiler, her er de to måtene å lese en tekstfil i C#:

  • Gjennom fil.ReadAllText
  • Gjennom StreamReader -klasse

Gjennom fil.ReadAllText

Denne funksjonen leser hele tekstfilen på en gang og returnerer den som en streng, her er et eksempel på hvordan du bruker denne funksjonen til å lese tekstfil i C#:

ved hjelp av system;
Bruke system.Io;
namespace ReadingTextFile

Klasseprogram

statisk tomrom (streng [] args)

// gi banen til tekstfilen
String filepath = @"C: \ Brukere \ Aaliy \ OneDrive \ Desktop \ Testfil.tekst";
// Lese tekstfil
String fileContent = fil.ReadAllText (FilePath);
// Vis innholdet i tekstfilen
Konsoll.WritLine (FileContent);


Her er forklaringen på eksempelkoden vi har gitt ovenfor:

1: Bruke system; og bruke system.Io: Disse linjene inkluderer nødvendige navnefelt for å bruke filen.ReadAllText () -funksjon. Systemets navneområde inneholder konsollklassen som brukes til å vise innholdet i tekstfilen, og systemet.IO -navneområdet inneholder filklassen som leser tekstfilen.

2: namespace ReadingTextFile: Navneområdet erklæring definerer et omfang for programmet og hjelper til med å organisere koden.

3: Klasseprogram: Klassedeklarasjonen definerer en blåkopi for et objekt og inneholder dataene og atferden til objektet.

4: statisk tomrom (String [] args): Hovedmetoden er definert som en statisk metode, som betyr at den kan kalles uten å lage en klasse. Hovedmetoden er erklært som ugyldig fordi den ikke returnerer en verdi. Strengen [] Args -parameteren er en strengmatrise som kan sendes til programmet når det kjøres.

5: String filepath = @”C: : \ Brukere \ Aaliy \ OneDrive \ Desktop \ Test -fil.tekst": Denne linjen erklærer en strengvariabel filsti og tildeler filstien til tekstfilen til den. @ -Symbolet før filstien tillater bruk av rømningstegn i strengen.

6: String fileContent = fil.ReadAllText (FilePath): Denne linjen bruker filen.ReadAllText -metoden for å lese hele tekstfilen og lagre innholdet i tekstfilen i FileContent String -variabelen. FilePath -variabelen sendes som en parameter til funksjonen for å spesifisere plasseringen av tekstfilen.

7: Konsoll.WritLine (FileContent): Denne linjen bruker konsollen.WritLine () -funksjonen som viser innholdet i tekstfilen på konsollen. De filcontent Variabel sendes som en parameter til konsollen.WritLine -metoden for å spesifisere innholdet som skal vises.

Produksjon

Bildet nedenfor viser utgangen som inneholder innholdet skrevet i tekstfilen:

Gjennom StreamReader -klasse

Streamreader -klassen er en del av systemet.Io navneområde og brukes til å lese tekstfiler i C#. StreamReader -klassen leser en tekstfil en linje om gangen, og den leser en tekstfil fra begynnelse til slutt, her er et eksempelkode for det:

ved hjelp av system;
Bruke system.Io;
namespace ReadingTextFile

Klasseprogram

statisk tomrom (streng [] args)

// spesifiser banen til tekstfilen
String filepath = @"C: \ Brukere \ Aaliy \ OneDrive \ Desktop \ Testfil.tekst";
// Åpne tekstfilen
Bruker (StreamReader StreamReader = New StreamReader (FilePath))

// Les hele tekstfilen
samtidig som (!StreamReader.Endofstream)

Strenglinje = StreamReader.Readline ();
// Vis hver linje i tekstfilen
Konsoll.WritLine (linje);




Her er forklaringen på de viktigste forskjellene i koden vi brukte i forrige metode:

1: Bruke system; og bruke system.Io: Disse linjene inkluderer de nødvendige navneområdene for å bruke StreamReader -klassen. Systemets navneområde inneholder konsollklassen som brukes til å vise innholdet i tekstfilen, og systemet.IO -navneområdet inneholder StreamReader -klassen for å lese tekstfilen.

2: Bruker (StreamReader StreamReader = New StreamReader (FilePath)): Denne linjen åpner tekstfilen ved hjelp av StreamReader -klassen. Brukserklæringen disponerer automatisk StreamReader -objektet etter at kodeblokken i bruksuttalelsen er utført. FilePath -variabelen sendes som en parameter til StreamReader Constructor for å spesifisere plasseringen av tekstfilen.

3: mens (!StreamReader.Endofstream): Denne linjen skaper en stundsløyfe som fortsetter å utføre så lenge endofstream -egenskapen til strømningsobjektet er falsk. Eiendommen til endofstream returnerer sant når slutten av tekstfilen er nådd.

4: Strenglinje = StreamReader.Readline (): Denne linjen bruker StreamReader -klassen for å lese en linje i tekstfilen og lagre linjen i linjestrengvariabelen.

Produksjon

Bildet nedenfor viser utgangen som inneholder innholdet skrevet i tekstfilen:

Konklusjon

Å lese en tekstfil i C# er en enkel oppgave som kan utføres ved hjelp av enten streamreader -klassen eller filen.ReadAllText Method. Velg metoden som best passer dine behov, ettersom begge er beskrevet med et eksempel.