#chunk #file #chunking #process-file #concurrency

file-chunker

高效处理文件,以(大约)等大小的部分

2个版本

0.1.1 2022年2月10日
0.1.0 2022年2月9日

#996 in 文件系统

Download history • Rust 包仓库 96/week @ 2024-03-14 • Rust 包仓库 32/week @ 2024-03-21 • Rust 包仓库 72/week @ 2024-03-28 • Rust 包仓库 45/week @ 2024-04-04 • Rust 包仓库 43/week @ 2024-04-11 • Rust 包仓库 62/week @ 2024-04-18 • Rust 包仓库 68/week @ 2024-04-25 • Rust 包仓库 83/week @ 2024-05-02 • Rust 包仓库 55/week @ 2024-05-09 • Rust 包仓库 111/week @ 2024-05-16 • Rust 包仓库 156/week @ 2024-05-23 • Rust 包仓库 82/week @ 2024-05-30 • Rust 包仓库 114/week @ 2024-06-06 • Rust 包仓库 127/week @ 2024-06-13 • Rust 包仓库 116/week @ 2024-06-20 • Rust 包仓库 153/week @ 2024-06-27 • Rust 包仓库

526 每月下载量
用于 krapslog

MIT 协议

17KB
222

file-chunker

此crate提供了FileChunker类型,该类型对于高效以(大约)等大小的部分读取文件很有用。

原始用例是处理日志文件,每个线程处理一个块,并保证每个块都以完整的文本行结束。

示例

use file_chunker::FileChunker;
let file = std::fs::File::open("/path/to/file").unwrap();
let chunker = FileChunker::new(&file).unwrap();
chunker.chunks(1024, Some('\n'))
    .unwrap()
    .iter()
    .for_each(|chunk| {
        println!("{:?}", chunk);
    });

lib.rs:

此crate提供了FileChunker类型,该类型对于高效以(大约)等大小的部分读取文件很有用。

原始用例是处理日志文件,每个线程处理一个块,并保证每个块都以完整的文本行结束。

示例

use file_chunker::FileChunker;

let file = std::fs::File::open("/path/to/file").unwrap();
let chunker = FileChunker::new(&file).unwrap();
chunker.chunks(1024, Some('\n'))
    .unwrap()
    .iter()
    .for_each(|chunk| {
        println!("{:?}", chunk);
    });

依赖项

~295KB