#temporary-files #temp-file #fs-file #camino

camino-tempfile

一个用于管理临时文件和目录的库,具有 UTF-8 路径

3 个稳定版本

1.1.1 2023年11月28日
1.0.3 2023年11月28日
1.0.2 2023年4月24日

#158 in 文件系统

Download history 13520/week @ 2024-04-08 13847/week @ 2024-04-15 13473/week @ 2024-04-22 13096/week @ 2024-04-29 11041/week @ 2024-05-06 15833/week @ 2024-05-13 12269/week @ 2024-05-20 10979/week @ 2024-05-27 15648/week @ 2024-06-03 13678/week @ 2024-06-10 15092/week @ 2024-06-17 17579/week @ 2024-06-24 11662/week @ 2024-07-01 14918/week @ 2024-07-08 14837/week @ 2024-07-15 14898/week @ 2024-07-22

56,947 每月下载量
用于 16 个 Crates (6 直接)

MIT/Apache

73KB
525

camino-tempfile

camino-tempfile on crates.io Documentation (latest release) Documentation (main) License License

一个安全、跨平台的 Rust 临时文件库,具有 UTF-8 路径。

此 crate 是围绕 tempfile 的包装,它使用由 camino 定义的 Utf8PathUtf8PathBuf 类型。如果你的代码主要使用 camino,则需要反复将临时路径转换为 Utf8Path,这可能会很麻烦。此 crate 为你管理这些。

除了创建临时文件外,此库还允许用户安全地打开对同一临时文件的多个独立引用(对于消费者/生产者模式非常有用,并且安全实现起来非常困难)。

文档

用法

最低要求的 Rust 版本:1.63.0

将其添加到你的 Cargo.toml

[dependencies]
camino-tempfile = "1"

示例

use std::fs::File;
use std::io::{Write, Read, Seek, SeekFrom};

fn main() {
    // Write
    let mut tmpfile: File = camino_tempfile::tempfile().unwrap();
    write!(tmpfile, "Hello World!").unwrap();

    // Seek to start
    tmpfile.seek(SeekFrom::Start(0)).unwrap();

    // Read
    let mut buf = String::new();
    tmpfile.read_to_string(&mut buf).unwrap();
    assert_eq!("Hello World!", buf);
}

许可

此项目可在 Apache 2.0 许可证或 MIT 许可证的条款下获得。

部分复制并改编自 tempfile,并使用 MIT 和 Apache 2.0 许可证。tempfile 的版权为 2015 Steven Allen 和 tempfile 作者。

依赖

~2–10MB
~109K SLoC