4个版本
0.1.2 | 2021年10月30日 |
---|---|
0.1.1 | 2021年10月23日 |
0.1.0 | 2021年10月22日 |
0.0.1 | 2021年10月18日 |
#2615 in 解析实现
605每月下载次数
在3个crate中使用(通过cargo-cog)
22KB
471 行
dataurl
CLI工具/Rust库,用于将文件和文本转换为数据URL及其反向转换
安装
使用Cargo
cargo install dataurl
使用容器
docker build -t Y2Z/dataurl .
sudo install -b dist/run-in-container.sh /usr/local/bin/dataurl
从源代码
git clone https://github.com/Y2Z/dataurl.git
cd dataurl
make install
使用预构建的二进制文件(Windows、基于ARM的设备等)
每个版本都包含Windows、GNU/Linux以及具有非标准CPU架构的平台的预构建二进制文件。
使用(CLI)
dataurl "some text"
dataurl -d 'data:text/html,text<a id%3D"b">ok</a>?a=v#f' > index.html
dataurl -i picture.png
cat file.txt | dataurl -i -
cat file.png | dataurl
使用(crate)
use dataurl::DataUrl;
let data_url: DataUrl = DataUrl::parse("data:,Hello,%20World!")?;
assert_eq!(data_url.get_media_type(), "text/plain".to_string());
assert_eq!(data_url.get_media_type_no_default(), None);
assert_eq!(data_url.get_charset(), "US-ASCII".to_string());
assert_eq!(data_url.get_charset_no_default(), None);
assert!(!data_url.get_is_base64_encoded());
assert_eq!(data_url.get_data(), [72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100, 33]);
assert_eq!(data_url.get_fragment(), None);
assert_eq!(data_url.to_string(), "data:,Hello%2C%20World%21");
assert_eq!(data_url.get_text(), "Hello, World!");
标志和选项
-
-b
: 使用base64编码数据 -
-
: 尝试解析输入,输出结果数据 -
-
: 使用自定义charset
-
-
: 添加fragment
-
-
: 指定file
读取数据(使用-
表示STDIN) -
-
: 调整media type
参考
许可
在法律允许的范围内,作者(s)将此软件的所有版权及相关邻接权奉献给全世界公众领域。此软件分发时不附带任何保证。
依赖
~5.5MB
~178K SLoC