Rust:
สร้างไฟล์ชั่วคราว
วิธีการ:
ใน Rust, ตัว tempfile
crate เป็นตัวช่วยที่ดีสำหรับเหตุการณ์ไฟล์ชั่วคราว เพิ่มมันลงในไฟล์ Cargo.toml
ของคุณ:
[dependencies]
tempfile = "3.3.0"
จากนั้นคุณสามารถสร้างไฟล์ชั่วคราวได้ดังนี้:
use tempfile::NamedTempFile;
use std::io::{Write, Read};
fn main() -> std::io::Result<()> {
let mut temp_file = NamedTempFile::new()?;
write!(temp_file, "Hello, world!")?;
let mut content = String::new();
temp_file.reopen()?.read_to_string(&mut content)?;
println!("Temp file contains: {}", content);
// ไฟล์ชั่วคราวจะถูกลบที่นี่เมื่อ `temp_file` ออกจากขอบเขต
Ok(())
}
รันโค้ด มันจะเกิดเหตุการณ์วิเศษ ไฟล์ปรากฏขึ้น แล้วก็หายไปเมื่อคุณทำเสร็จ
ขุดลึก
ในอดีต, ไฟล์ชั่วคราวเป็นเรื่องเก่าแก่เท่าภูเขาในการคอมพิวติ้ง ไฟล์เหล่านี้เคยเป็นวิธีที่ง่ายแต่มีประสิทธิภาพในการจัดการข้อมูลที่ไม่ต้องการการจัดเก็บระยะยาว ในโลกของ Rust, ตัว tempfile
crate ทำให้กระบวนการไฟล์ชั่วคราวลื่นไหลมากขึ้น, โดยอัตโนมัติทำความสะอาดไฟล์เมื่อไม่จำเป็นต้องใช้งานอีก, หลีกเลี่ยงปวดหัวจากการทำความสะอาดด้วยตนเองในอดีต
มีทางเลือกอื่นไหม? แน่นอน, คุณสามารถสร้างโซลูชันของตัวเองด้วย std::fs
และทำความสะอาดด้วยตนเอง, แต่ทำไมต้องคิดค้นล้อใหม่?
เกี่ยวกับรายละเอียด? tempfile
สร้างไฟล์ในไดเรกทอรี่ชั่วคราวที่ระบบปฏิบัติการกำหนด, และชื่อไฟล์จะถูกสับเปลี่ยนเพื่อป้องกันการชนกันและเพิ่มความปลอดภัย
ดูเพิ่มเติม
- คู่มือการใช้งาน Rust
tempfile
: https://docs.rs/tempfile/ - คลังไลบรารีการอินพุท/เอาต์พุทมาตรฐานของ Rust: https://doc.rust-lang.org/std/io/
- แนวคิดไฟล์ชั่วคราวโดยทั่วไป: https://en.wikipedia.org/wiki/Temporary_file