从char获取字节序列(u8)

时间:2015-06-24 00:24:22

标签: rust

我需要检查构成一个字符的字节。我知道可以这样做,从charString再到&[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::transmutechar[u8; 4],但在这里使用不安全的代码似乎很愚蠢。

编辑:char上有an unstable encode_utf8 method

1 个答案:

答案 0 :(得分:2)

在我看来,你想要的是encode_utf8,但这也是不稳定的。您可以看到其实施here