#文件扩展名 #扩展名 #媒体类型 #mime #no-std

no-std mime2ext

给定一个 MIME 类型,建议一个文件扩展名

10 个版本

使用旧的 Rust 2015

0.1.53 2024 年 8 月 16 日
0.1.52 2022 年 2 月 21 日
0.1.51 2021 年 11 月 9 日
0.1.4 2021 年 5 月 31 日
0.1.2 2021 年 3 月 3 日

#142 in 文件系统

Download history 1878/week @ 2024-05-03 1822/week @ 2024-05-10 1827/week @ 2024-05-17 2269/week @ 2024-05-24 2030/week @ 2024-05-31 1679/week @ 2024-06-07 1762/week @ 2024-06-14 1995/week @ 2024-06-21 1682/week @ 2024-06-28 1776/week @ 2024-07-05 2225/week @ 2024-07-12 2167/week @ 2024-07-19 1738/week @ 2024-07-26 1551/week @ 2024-08-02 1168/week @ 2024-08-09 1672/week @ 2024-08-16

6,732 每月下载量
用于 14 个 Crates(5 个直接使用)

MIT 许可证

28KB
188

mime2ext

Crates.io API reference MSRV CI

一个简单的紧凑型 crate,用于查找 MIME 类型的文件扩展名。

它嵌入部分 mime-db 数据库,高效地压缩到约 20 KiB。没有依赖项,并且与 no_std 兼容。

示例

use mime2ext::mime2ext;

assert_eq!(mime2ext("image/png"), Some("png"));
assert_eq!(mime2ext("application/octet-stream"), Some("bin"));
assert_eq!(mime2ext("text/html; charset=UTF-8"), Some("html"));
assert_eq!(mime2ext("nonexistent/mimetype"), None);
assert_eq!(mime2ext("invalid-mimetype"), None);

mime 的互操作性

mimeMime 类型通过其实现的 AsRef<str> 支持,无需对该 crate 有任何依赖

use mime::{Mime, TEXT_PLAIN};
use mime2ext::mime2ext;

assert_eq!(mime2ext(TEXT_PLAIN), Some("txt"));
let mime: Mime = "text/xml; charset=latin1".parse()?;
assert_eq!(mime2ext(&mime), Some("xml"));

版本控制

mime2ext 包含 mime-db 的静态版本。每次 mime-db 的新版本都需要发布新的 mime2ext 版本。

mime2ext 的版本号跟踪 mime-db 的版本。 mime2ext 版本 0.1.49 对应 mime-db 版本 1.49.0。

查看 CHANGELOG.md 了解版本之间的差异,包括对 mime-db 的相关更改。

许可证

mime2extmime-db 都采用 MIT 许可证。请参阅 LICENSEmime-db/LICENSE

另请参阅

  • mime_guess,它主要在相反方向上转换。它也可以将 MIME 类型转换为扩展名,但通常建议使用很少使用的扩展名,例如 jpe 用于 image/jpeg

无运行时依赖