#charset #unicode #encoding #text-encoding

textcode

文本编码/解码库。支持:UTF-8,ISO6937,ISO8859,GB2312

6个版本

0.2.2 2022年5月2日
0.2.1 2020年11月3日
0.1.2 2020年4月24日
0.1.1 2019年12月23日
0.1.0 2019年11月18日

#353 in 文本处理

Download history 195/week @ 2024-03-13 537/week @ 2024-03-20 657/week @ 2024-03-27 646/week @ 2024-04-03 545/week @ 2024-04-10 555/week @ 2024-04-17 416/week @ 2024-04-24 506/week @ 2024-05-01 417/week @ 2024-05-08 262/week @ 2024-05-15 360/week @ 2024-05-22 518/week @ 2024-05-29 338/week @ 2024-06-05 375/week @ 2024-06-12 303/week @ 2024-06-19 302/week @ 2024-06-26

1,430 每月下载量
5 个crates中使用 (3 直接使用)

MIT 协议

445KB
7.5K SLoC

textcode

docs

简介

textcode是一个文本编码/解码库。支持以下字符集:

  • UTF-8
  • iso-6937 - ISO/IEC 6937的拉丁语超集,包含欧元和带变音符号的字母
  • iso-8859-1 - 西欧
  • iso-8859-2 - 中欧
  • iso-8859-3 - 南欧
  • iso-8859-4 - 北欧
  • iso-8859-5 - 西里尔文
  • iso-8859-6 - 阿拉伯文
  • iso-8859-7 - 希腊文
  • iso-8859-8 - 希伯来文
  • iso-8859-9 - 土耳其文
  • iso-8859-10 - 北欧
  • iso-8859-11 - 泰文
  • iso-8859-13 - 波罗的海地区
  • iso-8859-14 - 塞尔特
  • iso-8859-15 - 西欧
  • iso-8859-16 - 南东欧
  • gb2312 - 简体中文

示例

use textcode::iso8859_5;

const UTF8: &str = "Привет!";
const ISO8859_5: &[u8] = &[0xbf, 0xe0, 0xd8, 0xd2, 0xd5, 0xe2, 0x21];

let mut dst: Vec<u8> = Vec::new();
iso8859_5::encode(UTF8, &mut dst);
assert_eq!(dst.as_slice(), ISO8859_5);

let mut dst = String::new();
iso8859_5::decode(ISO8859_5, &mut dst);
assert_eq!(UTF8, dst.as_str());

无运行时依赖