除了读取字符串,还有std::fs::read函数,如果文件包含二进制数据,该函数会将数据读成一个字节向量。 下一个例子显示了如何将文件的内容读入内存,随后逐行打印到控制台: let file = fs::File::open("favorite_websites.txt")?; let lines = io::BufReader::new(file).lines(); for line in lines { if ...
使用std::fs::File和std::io::Read模块可以读取二进制文件内容。以下是一个简单的示例: usestd::fs::File;usestd::io::prelude::*;fnmain() {letmutfile = File::open("file.bin").expect("file not found");letmutbuffer = [0;5]; file.read_exact(&mutbuffer).expect("something went wrong r...
Rust语言中操作文件的第一步就是文件读取,使用Rust内置的std::fs::File类型即可。使用File类型可以打开一个文件,并且从中读取数据。 usestd::fs::File;usestd::io::prelude::*;fnmain() - > std::io::Result< () > {letmutf = File::open("file.txt")?;letmutcontents =String::new(); f.read_...
use std::fs; use std::path; // 创建文件 let f = fs::File::create("filename").unwrap(); let f = fs::OpenOptions::new() .create_new(true) .open(filename)?; // 打开文件 let f = fs::File::open("filename").unwrap(); f.metadata(); // 获得一些 文件基本信息,创建时间、大...
usestd::fs::File;usestd::io::{self,Read,Write};usestd::path::Path;fnmain()->io::Result<()>{// 定义输入文件和输出文件路径letinput_path=Path::new("input.txt");letoutput_path=Path::new("output.txt");// 打开输入文件letmutinput_file=File::open(input_path)?;println!("Reading from...
std::result:: result <T, E>类型是一个泛型Result类型,可以用来表示任何错误。 每种错误类型都有各自的一组方法和特征,用于以特定的方式来处理它。 下面是Rust中文件读取操作的错误处理示例: use std::fs::File; use std::io::Read; fn read_file(path: &str) -> Result<String, std::io::Error> ...
use std::fs; fn main() { fs::create_dir("new_directory").expect("无法创建目录"); } 4. 删除文件或目录: use std::fs; fn main() { fs::remove_file("example.txt").expect("无法删除文件"); fs::remove_dir("new_directory").expect("无法删除目录"); ...
file.write_all(b"opensource.com\n")?; Ok() 由于文件类型实现了 Write 🔗 doc.rust-lang.org 特性,所以可以使用相关的方法来写入文件。然而, create 方法可以覆盖一个已经存在的文件。 为了获得对文件描述符的更多控制,必须使用 std::fs::OpenOptions 🔗 doc.rust-lang.org 类型。这提供了类似于其他语...
std::fs::File 的 open 方法是"只读"打开文件,并且没有配套的 close 方法,因为 Rust 编译器可以在文件不再被使用时自动关闭文件。文件写入 文件写入分为一次性写入和流式写入。流式写入需要打开文件,打开方式有"新建"(create)和"追加"(append)两种。 一次性写入:实例...
1、使用File::write方法 usestd::fs::File;usestd::io::Write;letcontent: &str="Hello, world";// 以只写的方式打开文件,文件存在则会覆盖原始内容letmutfile: File = File::create("foo.txt").unwrap();// 以字节的形式写入,返回写入的字节数letlen:usize= file.write(content.as_bytes()).unwrap...