Trait std::os::windows::fs::FileExt 1.15.0[−][src]
pub trait FileExt { fn seek_read(&self, buf: &mut [u8], offset: u64) -> Result<usize>; fn seek_write(&self, buf: &[u8], offset: u64) -> Result<usize>; }
This is supported on Windows only.
Expand description
Windows 特定于 fs::File
的扩展。
Required methods
搜寻到给定位置并读取多个字节。
返回读取的字节数。
偏移量相对于文件的开始,因此独立于当前游标。
当前游标受此函数的影响,它被设置为读取的结尾。
超出文件末尾的读取将始终以 0\ 的长度返回。
请注意,类似于 File::read
,短读返回不会出错。
从如此短的读取返回时,文件指针仍会更新。
Examples
use std::io; use std::fs::File; use std::os::windows::prelude::*; fn main() -> io::Result<()> { let mut file = File::open("foo.txt")?; let mut buffer = [0; 10]; // 从文件开头开始读取 10 个字节,从 72 个字节开始。 file.seek_read(&mut buffer[..], 72)?; Ok(()) }Run
搜寻到给定位置并写入多个字节。
返回写入的字节数。
偏移量相对于文件的开始,因此独立于当前游标。 当前游标受此函数的影响,它被设置为写入结束。
当写入超出文件末尾时,文件将适当扩展,并且中间字节将保持未初始化状态。
请注意,与 File::write
相似,返回短写也不是错误。
从这么短的写入返回时,文件指针仍会更新。
Examples
use std::fs::File; use std::os::windows::prelude::*; fn main() -> std::io::Result<()> { let mut buffer = File::create("foo.txt")?; // 从文件开头开始写一个字节字符串,从 72 个字节开始。 buffer.seek_write(b"some bytes", 72)?; Ok(()) }Run