This crate allows you to specify an offset for reads and writes, without changing the current
position in a file. This is similar to pread()
and pwrite()
in C.
The major advantages of this type of I/O are:
Read the fifth 512-byte sector of a file:
```rust use std::fs::File; use positioned_io::ReadAt;
// note that file does not need to be mut let file = File::open("tests/pi.txt")?;
// read up to 512 bytes let mut buf = [0; 512]; let bytesread = file.readat(2048, &mut buf)?; ```
Note: If possible use the RandomAccessFile
wrapper. On Windows ReadAt
directly on File
is very slow.
https://docs.rs/positioned-io
positioned-io is licensed under the MIT license.