7 个版本 (破坏性)
0.7.0 | 2024 年 5 月 12 日 |
---|---|
0.6.0 | 2024 年 5 月 12 日 |
0.5.0 | 2024 年 5 月 12 日 |
0.4.0 | 2024 年 5 月 12 日 |
0.1.0 | 2024 年 5 月 10 日 |
#21 in #characters
每月下载量 41 次
16KB
315 行
utf8_reader
从实现 Read 特性的对象中读取 UTF-8 字符
用法
use utf8_reader::Utf8Reader;
use std::io::Cursor;
use std::io::Write;
let mut buf = Cursor::new(Vec::new());
buf.write("复/d❤".as_bytes()).unwrap();
buf.set_position(0);
let mut reader = Utf8Reader::new(buf);
assert_eq!(Some('复'.into()), reader.next());
assert_eq!(Some('/'.into()), reader.next());
assert_eq!(Some('d'.into()), reader.next());
assert_eq!(Some('❤'.into()), reader.next());
assert_eq!(None, reader.next());
注意:此 Utf8Reader 不会验证内容是否为有效的 UTF-8
lib.rs
:
从实现 Read 特性的对象中读取 UTF-8 字符
示例
use utf8_reader::Utf8Reader;
use std::io::Cursor;
use std::io::Write;
let mut buf = Cursor::new(Vec::new());
buf.write("复/d❤".as_bytes()).unwrap();
buf.set_position(0);
let mut reader = Utf8Reader::new(buf);
assert_eq!(Some('复'.into()), reader.next());
assert_eq!(Some('/'.into()), reader.next());
assert_eq!(Some('d'.into()), reader.next());
assert_eq!(Some('❤'.into()), reader.next());
assert_eq!(None, reader.next());