הביצועים הגבוהים ובטיחות הזיכרון של Rust, בשילוב עם תמיכה בביטויים רגולריים ופעולות I/O יעילות של קבצים, מאפשרים עיבוד טקסט ונתונים משכנע, מה שהופך את Rust לשפה מצוינת לעבודה עם קבצי טקסט.
קובצי טקסט הם מקור נתונים משותף ליישומים, ו-Rust מספקת קבוצה חזקה של כלים לעבודה עם קבצי טקסט בספרייה הסטנדרטית.
איפור של סרטון היום גלול כדי להמשיך עם התוכן
עבודה עם קבצי טקסט בחלודה
הספרייה הסטנדרטית של Rust מספקת מספר מודולים לקריאה, כתיבה וטיפול בקבצים, כולל קבצי טקסט.
עבודה עם קבצי טקסט ב-Rust כוללת קריאת נתונים מקובץ, שימוש בנתונים בזיכרון, ולאחר מכן כתיבת הנתונים שהשתנו בחזרה לקובץ.
חלודה מספקת את המובנה fs מודול לעבודה עם קבצים ומערכת הקבצים. ה fs מודול מספק פונקציות וסוגים שבהם אתה יכול להשתמש כדי לפתוח, לקרוא, לכתוב ולתפעל קבצים וספריות, כולל קבצי טקסט.
פונקציות פופולריות ב- fs מודול כולל את fs::קובץ::פתוח פונקציה לפתיחת קבצים לפעולות קריאה, ה fs::File::create ליצירת קבצים, וה fs::כתוב פונקציה לכתיבת נתונים לקבצים.
כיצד לשנות dpi של התמונה
ה fs מודול מספק גם פונקציות כמו fs::remove_file פונקציה למחיקת קבצים, ה fs::create_dir פונקציה ליצירת ספריות, ואת fs::read_dir פונקציה לקריאת קבצים בספריה.
ה fs המודול הוא תכליתי, ואתה יכול להשתמש ב fs מודול לעבוד עם רוב סוגי הקבצים, כולל קבצי טקסט.
קריאת קבצי טקסט בחלודה
אתה צריך לפתוח קובץ טקסט כדי לקרוא את הקובץ. אתה תשתמש ב- fs::קובץ::פתוח פונקציה לפתיחת הקובץ לפני פעולת הקריאה.
הפעל את הפקודות הללו כדי ליצור קובץ טקסט ולכתוב ממנו משפט לקובץ שורת הפקודה שלך .
touch input.txt
echo "We're tech enthusiasts on a mission to teach the world how to use and understand the tech in their lives. Phones, laptops, gadgets, apps, software, websites, services---if it can make your life better, we'll show you all the tips, tricks, and techniques you need to know to get the most out of what you have." > input.txt
כעת, כשיש לך קובץ טקסט קיים עם תוכן לפעולת הקריאה, תוכל לכתוב קוד Rust כדי לקרוא את תוכן הקובץ.
המקלדת של הלפטופ שלי לא עובדת
הנה איך אתה יכול לקרוא מתוך input.txt קוֹבֶץ:
use std::fs::File;
use std::io::{BufRead, BufReader};
fn main() -> std::io::Result<()> {
// Open the file for reading
let file = File::open("input.txt")?;
// Create a buffered reader to read the file
let reader = BufReader::new(file);
// Read the file line by line
for line in reader.lines() {
println!("{}", line?);
}
Ok(())
}
ה רָאשִׁי הפונקציה מחזירה את תוצאת הפעולה. ה קוֹבֶץ משתנה הוא מופע הקובץ הפתוח שה- חָדָשׁ פונקציה של BufRead מודול משתלב כדי ליצור קורא מאוחסן לקריאת הקובץ.
מבנה בקרת הלולאה עובר דרך הקובץ ומדפיס כל שורה מהקובץ לקונסולה עם ה- println! מאקרו.
כתיבה לקבצי טקסט בחלודה
תצטרך ליצור קובץ חדש עם ה fs::File::create פונקציה (אם הקובץ לא קיים) כדי לכתוב לקובץ טקסט.
כך תוכל ליצור ולכתוב קבצי טקסט ב- Rust:
use std::fs::File;
use std::io::{BufWriter, Write};
fn main() -> std::io::Result<()> {
// Create a new file for writing
let file = File::create("output.txt")?;
// Create a buffered writer to write to the file
let mut writer = BufWriter::new(file);
// Write some data to the file
writer.write_all(b"Hello, world!\n")?;
writer.write_all(b"Rust is awesome.\n")?;
// Flush the writer to ensure all data is written to disk
writer.flush()?;
println!("Write Operation Successful");
Ok(())
}
ה קוֹבֶץ משתנה הוא מופע של היצירה שנוצרה output.txt קובץ, ואת סוֹפֵר משתנה הוא מופע כותב מאוחסן לכתיבה לקובץ.
ה לכתוב_הכל הפונקציה כותבת נתונים לקובץ, וה- סומק הפונקציה שוטפת את הסופר.
להלן התוצאה מהפעלת הפונקציה הראשית:
אתה יכול להשתמש בקובצי טקסט עבור מספר פעולות
קבצי טקסט הם קלים ונוחים למטרות מרובות, החל מקובצי תצורה ועד חילופי נתונים, רישום ועיבוד טקסט. בזמן שאתה בונה יישומים ב-Rust או בכל שפת תכנות אחרת כמו Go, אתה יכול לחקור מקרי שימוש אחרים עבור קבצי טקסט כדי להקל על זרימות העבודה שלך בפיתוח.