#decode-base64 #base64 #encode-decode #encode #decode #byte-sequences

bin+lib baze64

编码和解码 base64,从任意字节序列到任意字节序列

7 个版本 (重大更新)

0.6.0 2023年10月27日
0.5.0 2023年10月3日
0.4.1 2023年9月29日
0.4.0 2023年4月11日
0.1.0 2023年1月14日

#2372 in 编码

Download history 8/week @ 2024-04-05

每月57次 下载
用于 baze64-gui

MIT 许可证

25KB
517

Baze64

baze64 rust 库及其伴随的 CLI 工具

用法

只需将

baze64 = "<VERSION>"

添加到您的 Cargo.toml 文件中,其中 <VERSION> 是 crate 的最新版本。或者,运行

cargo add baze64

以自动完成此操作。

CLI

运行 baze64 encode <STRING> 编码一个字符串或 baze64 encode -f <FILE> 编码一个文件。通过运行以下命令解码 base64 字符串:

baze64 decode <STRING>

其中 <STRING> 是一个 base64 编码的字符串,添加 -o <FILE> 输出到 <FILE>


lib.rs:

编码和解码 base64 到和从任意字节序列

所有编码和解码都是通过 Base64String 结构体完成的,使用实现了 Alphabet 特性的字母表。

示例

编码和解码字符串

let text = "Some text".to_string();
let encoded = Base64String::<Standard>::encode(text.as_bytes());
let decoded = encoded.decode()?;

assert_eq!(text, String::from_utf8(decoded)?);

编码和解码文件

let mut file = File::open("path/to/file.ext")?;
let mut buffer = Vec::new();
file.read_to_end(&mut buffer)?;
let encoded = Base64String::<Standard>::encode(&buffer);
let bytes = encoded.decode()?;

assert_eq!(buffer, bytes);

依赖项

~4.5–6.5MB
~113K SLoC