我需要检查构成一个字符的字节。我知道可以这样做,从char
到String
再到&[u8]
就像这样:
let multi_byte_char = 'á';
let little_string = multi_byte_char.to_string();
let byte_slice = little_string.as_bytes();
for byte in byte_slice {
println!("{}", byte); // Prints "195, 161"
}
有没有办法直接从char
转到&[u8]
?我在the char documentation找不到任何内容。另一个选项是mem::transmute
从char
到[u8; 4]
,但在这里使用不安全的代码似乎很愚蠢。
编辑:char
上有an unstable encode_utf8
method。