3 个版本 (破坏性更新)

0.3.0 2023 年 8 月 12 日
0.2.0 2023 年 8 月 11 日
0.1.0 2023 年 8 月 11 日

#2269编码

MIT 许可证

11KB
123

Base94 编码库

使用 Base94 编码将二进制数据转换为紧凑的文本格式。轻松编码和解码数据,适用于各种用例。 🔐🔍

特性

  • 将二进制数据编码为 Base94 编码的字符串。
  • 将 Base94 编码的字符串解码回其原始的二进制形式。

使用方法

作为库

要使用此库,请在您的 Cargo.toml 中将其添加为依赖项

[dependencies]
base94 = "0.1.0"

然后在您的 Rust 代码中

use base94::{encode, decode};

fn main() {
    let data = b"Hello, World!";
    let base = 94;

    // Encode data
    let encoded = encode(data, base);
    println!("Encoded: {}", encoded);

    // Decode data
    let decoded = decode(&encoded, base).unwrap();
    println!("Decoded: {:?}", decoded);
}

作为 CLI

要安装 CLI,运行 cargo install base94。这将安装 base94cli 二进制文件到您的系统中。

Base94 encoding/decoding library

Usage: base94cli.exe [OPTIONS] <OPERATION> <INPUT> <OUTPUT>

Arguments:
  <OPERATION>  Whether to encode or decode the input [possible values: encode, decode]
  <INPUT>      The input file to encode or decode
  <OUTPUT>     The output file to write the result to

Options:
  -b, --base <BASE>  The base to use for encoding or decoding. Must be between 2 and 94 (inclusive) [default: 94]
  -h, --help         Print help
  -V, --version      Print version

支持的基数

编码和解码函数支持 2 到 94 范围内的各种基数。指定的基数必须在编码和解码操作中保持一致。

示例

基于 50 的编码和解码示例

use base94::{encode, decode};

let data = b"Example data for encoding.";
let base = 50;

let encoded = encode(data, base);
let decoded = decode(&encoded, base).unwrap();

assert_eq!(decoded, data);

依赖项

~1.6–2.2MB
~43K SLoC