1 个不稳定版本
0.1.0 | 2019年8月16日 |
---|
#85 in #adapter
701 每月下载量
在 2 个 crate 中使用
26KB
480 行
concat-reader
通过多个读取器连续读取的适配器
concat-reader
是一个 Rust 库,包含用于从任何实现 IntoIterator
的东西创建连接 Read
对象的实用函数和特质。
use concat_reader::{FileConcatRead, concat_path};
use std::io::{self, Read, BufRead, BufReader, Write};
fn main() -> io::Result<()>{
let files = vec!["/path/to/file_1", "/path/to/file_2", "/path/to/file_3"];
let mut f = concat_path(files);
let mut buffered = BufReader::new(f);
let stdout = io::stdout();
let mut handle = stdout.lock();
loop {
let mut line = String::new();
let r = buffered.read_line(&mut line)?;
if r == 0 {
return Ok(())
}
let f = buffered.get_ref().file_path();
eprintln!("read from {:?}", f);
handle.write(line.as_bytes())?;
}
}
文档:https://docs.rs/concat-reader