Lær, hvordan du læser fra og skriver til tekstfiler i Rust.
Rusts høje ydeevne og hukommelsessikkerhed kombineret med understøttelse af regulære udtryk og effektiv fil I/O operationer, muliggør overbevisende tekst- og databehandling, hvilket gør Rust til et fremragende sprog til at arbejde med tekst filer.
Tekstfiler er en delt datakilde for applikationer, og Rust giver et robust sæt værktøjer til at arbejde med tekstfiler i standardbiblioteket.
Arbejde med tekstfiler i rust
Rusts standardbibliotek indeholder flere moduler til at læse, skrive og manipulere filer, herunder tekstfiler.
At arbejde med tekstfiler i Rust involverer at læse data fra en fil, bruge dataene i hukommelsen og derefter skrive de ændrede data tilbage til filen.
Rust giver det indbyggede fs modul til at arbejde med filer og filsystemet. Det fs modul giver funktioner og typer, som du kan bruge til at åbne, læse, skrive og manipulere filer og mapper, inklusive tekstfiler.
Populære funktioner i fs modul omfatter fs:: Fil:: åben
funktion til at åbne filer til læseoperationer, den fs:: Fil:: oprette til oprettelse af filer, og fs:: skriv funktion til at skrive data til filer.Det fs Modulet indeholder også funktioner som fs:: remove_file funktion til sletning af filer, den fs:: create_dir funktion til at oprette mapper, og fs:: read_dir funktion til at læse filer i en mappe.
Det fs modulet er alsidigt, og du kan bruge fs modul til at arbejde med de fleste filtyper, inklusive tekstfiler.
Læsning af tekstfiler i rust
Du skal åbne en tekstfil for at læse filen. Du vil bruge fs:: Fil:: åben funktion for at åbne filen før læsehandlingen.
Kør disse kommandoer for at oprette en tekstfil og skrive en sætning til filen fra din kommandolinje.
tryk på input.txt
echo "Vi er teknologientusiaster på en mission om at lære verden, hvordan man bruger og forstår teknologien i deres liv. Telefoner, bærbare computere, gadgets, apps, software, websteder, tjenester, hvis det kan gøre dit liv bedre, viser vi du alle de tips, tricks og teknikker, du behøver at vide for at få mest muligt ud af det, du har." > input.txt
Nu hvor du har en eksisterende tekstfil med indhold til læseoperationen, kan du skrive rustkode for at læse filens indhold.
Sådan kan du læse fra input.txt fil:
brug std:: fs:: Fil;
brug std:: io::{BufRead, BufReader};fnvigtigste() -> std:: io::Resultat {
// Åbn filen til læsning
lade fil = Fil:: åben("input.txt")?;// Opret en bufferlæser for at læse filen
lade reader = BufReader:: ny (fil);// Læs filen linje for linje
til linje i reader.lines() {
println!("{}", linje?);
}
Okay(())
}
Det vigtigste funktion returnerer resultatet af operationen. Det fil variabel er den åbne filforekomst, som ny funktion af BufRead modul tager ind for at oprette en bufferlæser til at læse filen.
For loop kontrolstrukturen går gennem filen og udskriver hver linje fra filen til konsollen med println! makro.
Skrivning til tekstfiler i rust
Du skal oprette en ny fil med fs:: Fil:: oprette funktion (hvis filen ikke findes) til at skrive til en tekstfil.
Sådan kan du oprette og skrive tekstfiler i Rust:
brug std:: fs:: Fil;
brug std:: io::{BufWriter, Write};fnvigtigste() -> std:: io::Resultat {
// Opret en ny fil til skrivning
lade fil = Fil:: oprette("output.txt")?;// Opret en bufferforfatter for at skrive til filen
lademut writer = BufWriter:: ny (fil);// Skriv nogle data til filen
writer.write_all(b"Hej verden!\n")?;
writer.write_all(b"Rust er fantastisk.\n")?;// Skyl brænderen for at sikre, at alle data er skrevet til disken
writer.flush()?;
println!("Skriv operation vellykket");
Okay(())
}
Det fil variabel er en forekomst af den oprettede output.txt fil, og forfatter variabel er en bufferforfatterforekomst til skrivning til filen.
Det skriv_alt funktionen skriver data til filen, og Flush funktion skyller skriveren.
Her er resultatet af at køre hovedfunktionen:
Du kan bruge tekstfiler til flere operationer
Tekstfiler er lette og praktiske til flere formål, fra konfigurationsfiler til dataudveksling, logning og tekstbehandling. Når du bygger applikationer i Rust eller et hvilket som helst andet programmeringssprog som Go, kan du udforske andre anvendelsesmuligheder for tekstfiler for at lette dine udviklingsarbejdsgange.