StreamWriter - fájlok írása adatfolyamként
A StreamWriter osztály a C# egyik megoldása fájlok írására. Lehetővé teszi, hogy adatfolyamként írjunk a fájlokba, akár hozzáfűző, akár felülíró módban, sőt, a fájlt szükség szerint létre is hozza nekünk.
Használatához szükséges
using System.IO;
Konstruktor
A StreamWritert a használatához először példányosítanunk kell. Ehhez több konstruktor is rendelkezésre áll, a legegyszerűbb ezek közül az, amelynek csak egy szöveges paramétere van, a fájlnév.
StreamWriter iro = new StreamWriter("fajl.txt");
A tavaszi C# alapozó bootcampünk tananyagait továbbra is megvásárolhatod! Bár az élő előadásokon már túl vagyunk, az összes előadás anyaga továbbra is visszanézhető!
Irány a bootcampA fájlnéven kívül megadhatunk egy további logikai paramétert, amivel meghatározhatjuk, hogy ha a fájl már létezik, akkor annak a tartalmát felülírni szeretnénk (false), vagy hozzáfűzni (true) az új tartalmat.
StreamWriter iro = new StreamWriter("fajl.txt", true);
Fontosabb metódusok
- .Write(string szöveg): A szöveg paraméterben átadott szöveget beleírja a fájlba.
- .WriteLine(string szöveg): A szöveg paraméterben átadott szöveget, valamint egy sortörés karaktert beleírja a fájlba.
- .Close(): Lezárja a fájlt. Fontos! Míg fájlok olvasásánál kevésbé problémás ha egy fájlt nyitva felejtünk, addig fájlba írás esetén a fájl lezárása mindenképp szükséges! Ha fájlba írás után a szöveg mégsem jelent meg a fájlban, előfordulhat, hogy elfelejtetted lezárni azt.
Gyakorlati használata
Írjuk ki az adatok lista tartalmát a fajl.txt fájlba!
StreamWriter iro = new StreamReader("fajl.txt");
for(int i=0 ; i<adatok.Count ; ++i) {
iro.WriteLine(adatok[i]);
}
iro.Close();
Az StreamWriter osztály teljes dokumentációját megtalálhatod az alábbi linken:
StreamWriter Class (System.IO) | Microsoft Learn