#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 96/week @ 2024-03-14 32/week @ 2024-03-21 72/week @ 2024-03-28 45/week @ 2024-04-04 43/week @ 2024-04-11 62/week @ 2024-04-18 68/week @ 2024-04-25 83/week @ 2024-05-02 55/week @ 2024-05-09 111/week @ 2024-05-16 156/week @ 2024-05-23 82/week @ 2024-05-30 114/week @ 2024-06-06 127/week @ 2024-06-13 116/week @ 2024-06-20 153/week @ 2024-06-27

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