Ratkaistu: c terävä tekstitiedoston lukeminen

Viimeisin päivitys: 09/11/2023
Kirjoittaja: C SourceTrail

C# on moderni, yleiskäyttöinen, olio-ohjelmointikieli, jonka on kehittänyt Microsoft. Sen monipuolisuus on tehnyt siitä suositun, ja se on osoittautunut uskomattoman tehokkaaksi tapaksi kehittäjille luoda kestäviä ja turvallisia sovelluksia. Yksi sfääri, jossa C# loistaa, on tiedostojen käsittelyssä, kuten tekstitiedoston lukemisessa. Tämä prosessi sisältää tietojen lataamisen tekstitiedostosta ja käsittelemisen tarpeidemme mukaan. Mutta ennen kuin perehdymme metodologiaan, on tärkeää ymmärtää, miksi tehtävä on tarpeen ja milloin se saattaa tulla käyttöön.

Tekstitiedostojen lukemisen välttämättömyys

Usein tekstitiedostojen tietojen käyttöä aliarvioidaan. C#-sovelluksissa tämä voi kuitenkin palvella useita tarkoituksia. Tekstitiedostot eivät ole läheskään vanhentuneita, koska ne toimivat yksinkertaisena tapana tallentaa tietoja ilman tietokannan tarvetta tai ovat ainoa tapa tuoda tai viedä tietoja tietyissä ympäristöissä.

Käytännössä saatat joutua käyttämään tekstitiedostoja, kun määrität asetuksia tai lataat pelin pelitason tilaa. Se on myös yleinen tapa kirjata virheitä ja sovellustoimintoja.

StreamReader-luokan käytön aloittaminen

Tekstitiedoston lukeminen C#-kielellä suoritetaan käyttämällä StreamReader luokka, joka on osa System.IO-nimiavaruutta. On syytä huomata, että StreamReader-luokka ei ole suoraan vastuussa tekstitiedoston lukemisesta, vaan toimii agenttina tiedoston ja ohjelman välillä. Sen ensisijainen tarkoitus on lukea merkkejä tavuvirrasta tietyssä koodauksessa.

käyttäen System.IO:ta;

julkisen luokan ohjelma
{
public static void Main (merkkijono [] args)
{
using(StreamReader-lukija = uusi StreamReader("tiedostopolku")
{
merkkijono linja;
while((rivi = lukija.ReadLine()) != null)
{
System.Console.WriteLine(line);
}
}
}
}

Toimitetun koodin ymmärtäminen

Yllä olevassa C#-ohjelmassa määrität ensin tekstitiedoston polun StreamReader-konstruktorissa. Sitten tiedosto luetaan rivi riviltä StreamReader-luokan ReadLine-menetelmällä while-silmukan sisällä. Niin kauan kuin luettavassa tekstitiedostossa on rivejä (eli ReadLine-metodin tulos ei ole tyhjä), silmukka jatkuu. Luettu rivi kirjoitetaan sitten konsoliin käyttämällä Console.WriteLinea. Use-käsky sulkee StreamReaderin automaattisesti, kun sen tehtävä on suoritettu, mikä säästää meitä vaivan vapauttamisesta manuaalisesti hallitsemattomista resursseista.

Työskentely tiedostoluokan kanssa

Vaihtoehtoisesti .NET:n File-luokan käyttäminen on myös tehokas tapa lukea tekstitiedostoja. Se tarjoaa menetelmiä tiedostojen ja hakemistojen käsittelemiseen. File-luokan ReadAllLines- ja ReadAllText-metodit ovat käteviä ja ytimekkäitä.

käyttäen System.IO:ta;

julkisen luokan ohjelma
{
public static void Main (merkkijono [] args)
{
string[] lines = File.ReadAllLines("tiedostopolku");
foreach (jono rivissä)
{
System.Console.WriteLine(line);
}
}
}

Koodin selitys

Tässä C#-ohjelman versiossa käytämme File-luokan ReadAllLines-menetelmää tekstitiedoston kaikkien rivien lukemiseen merkkijonotaulukkoon yhdellä toiminnolla. Teemme sitten silmukan jokaisen merkkijonotaulukon rivin läpi käyttämällä foreach-silmukkaa ja kirjoitamme rivin konsoliin.

Nämä ovat vain perusesimerkkejä tekstitiedostojen lukemisesta C#:ssa. Sovelluksestasi riippuen saatat joutua käsittelemään poikkeuksia, tarkistamaan, onko tiedosto olemassa, ennen kuin yrität lukea sitä, tai suorittaa muita käsittelyjä tiedoille.

Related viestiä: