Siit saate teada, kuidas Rustis tekstifailidest lugeda ja neisse kirjutada.
Rusti suur jõudlus ja mäluohutus koos regulaaravaldiste toega ja tõhusa failisisend/väljundiga toimingud, võimaldavad kaasahaaravat teksti- ja andmetöötlust, muutes Rusti suurepäraseks keeleks tekstiga töötamiseks failid.
Tekstifailid on rakenduste jaoks jagatud andmeallikad ja Rust pakub tugevat tööriistakomplekti standardse teegi tekstifailidega töötamiseks.
Töötamine tekstifailidega roostes
Rusti standardteek pakub mitmeid mooduleid failide, sealhulgas tekstifailide lugemiseks, kirjutamiseks ja manipuleerimiseks.
Rustis tekstifailidega töötamine hõlmab failist andmete lugemist, mälus olevate andmete kasutamist ja seejärel muudetud andmete faili tagasi kirjutamist.
Rooste annab sisseehitatud fs moodul failide ja failisüsteemiga töötamiseks. The fs moodul pakub funktsioone ja tüüpe, mida saate kasutada failide ja kataloogide, sealhulgas tekstifailide, avamiseks, lugemiseks, kirjutamiseks ja töötlemiseks.
Populaarsed funktsioonid
fs moodul sisaldab fs:: Fail:: avatud funktsioon failide avamiseks lugemistoimingute jaoks fs:: Fail:: loo failide loomiseks ja fs:: kirjuta funktsioon andmete failidesse kirjutamiseks.The fs moodul pakub ka selliseid funktsioone nagu fs:: eemalda_fail funktsioon failide kustutamiseks, fs:: loomise_kataloog kataloogide loomise funktsioon ja fs:: read_dir funktsioon kataloogis olevate failide lugemiseks.
The fs moodul on mitmekülgne ja saate seda kasutada fs moodul, mis töötab enamiku failitüüpidega, sealhulgas tekstifailidega.
Tekstifailide lugemine roostes
Faili lugemiseks peate avama tekstifaili. Sa kasutad fs:: Fail:: avatud funktsioon faili avamiseks enne lugemistoimingut.
Käivitage need käsud, et luua tekstifail ja kirjutada failile lause teie käsurida.
puudutage faili sisend.txt
echo "Oleme tehnikahuvilised, kelle missiooniks on õpetada maailmale, kuidas tehnoloogiat oma elus kasutada ja mõista. Telefonid, sülearvutid, vidinad, rakendused, tarkvara, veebisaidid, teenused, kui need võivad teie elu paremaks muuta, näitame teile kõik näpunäited, nipid ja tehnikad, mida peate teadma, et saada oma olemasolevast maksimumi." > input.txt
Nüüd, kui teil on lugemistoimingu sisuga tekstifail olemas, saate faili sisu lugemiseks kirjutada roostekoodi.
Siin on, kuidas saate lugeda input.txt fail:
kasutada std:: fs:: Fail;
kasutada std:: io::{BufRead, BufReader};fnpeamine() -> std:: io::Tulemus {
// Avage fail lugemiseks
lase file = Fail:: open("input.txt")?;// Looge faili lugemiseks puhverdatud lugeja
lase lugeja = BufReader:: uus (fail);// Loe faili rida rea haaval
jaoks rida sisse reader.lines() {
println!("{}", rida?);
}
Okei(())
}
The peamine funktsioon tagastab toimingu tulemuse. The faili muutuja on avatud faili eksemplar, mis uus funktsioon BufRead moodul loob faili lugemiseks puhverdatud lugeja.
For silmuse juhtimisstruktuur läbib faili ja prindib iga rea failist konsooli println! makro.
Roostes tekstifailidesse kirjutamine
Peate looma uue faili fs:: Fail:: loo funktsioon (kui faili pole olemas), et kirjutada tekstifaili.
Rustis tekstifaile saate luua ja kirjutada järgmiselt.
kasutada std:: fs:: Fail;
kasutada std:: io::{BufWriter, Write};fnpeamine() -> std:: io::Tulemus {
// Loo kirjutamiseks uus fail
lase file = Fail:: loo("väljund.txt")?;// Looge faili kirjutamiseks puhverdatud kirjutaja
lasemut writer = BufWriter:: uus (fail);// Kirjutage faili mõned andmed
writer.write_all(b"Tere, maailm!\n")?;
writer.write_all(b"Rooste on suurepärane.\n")?;// Loputage kirjutaja, et kõik andmed oleksid kettale kirjutatud
kirjanik.flush()?;
println!("Kirjutusoperatsioon õnnestus");
Okei(())
}
The faili muutuja on loodud eksemplar output.txt fail ja kirjanik muutuja on puhverdatud kirjutaja eksemplar faili kirjutamiseks.
The kirjuta_kõik funktsioon kirjutab faili andmed ja loputama funktsioon loputab kirjutajat.
Siin on põhifunktsiooni käivitamise tulemus:
Tekstifaile saate kasutada mitme toimingu jaoks
Tekstifailid on kerged ja mugavad mitmel otstarbel, alates konfiguratsioonifailidest kuni andmevahetuse, logimise ja tekstitöötluseni. Rakenduste loomisel Rustis või mõnes muus programmeerimiskeeles (nt Go) saate arendustöö hõlbustamiseks uurida muid tekstifailide kasutusjuhtumeid.