koivunej / positioned-io

Read and write from offsets in Rust.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

positioned-io

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:

  • You don't need to seek before doing a random-access read or write, which is convenient.
  • Reads don't modify the file at all, so don't require mutability.

Build Status Crates.io

Example

Read the fifth 512-byte sector of a file:

use positioned_io::ReadAt;

// Note that file does not need to be mut!
let file = try!(File::open("foo.data"));
let mut buf = vec![0; 512];
let bytes_read = try!(file.read_at(2048, &mut buf));

Documentation

http://vasi.github.io/positioned-io/positioned_io/

Usage

This crate works with Cargo and is on crates.io. Add it to your Cargo.toml like so:

[dependencies]
positioned-io = "0.2.0"

About

Read and write from offsets in Rust.

License:MIT License


Languages

Language:Rust 100.0%