我有一个字符串,想把它转换成二进制字符串。
let content = request_version.to_string() + &request_length.to_string() + request_json;
let content = request_version.to_string() + &request_length.to_string() + request_json;
你可能是想在类型 String 中表示你的字符串的二进制形式。
fn main() {
let name = "Jake".to_string();
let mut name_in_binary = "".to_string();
// Call into_bytes() which returns a Vec<u8>, and iterate accordingly
// I only called clone() because this for loop takes ownership
for character in name.clone().into_bytes() {
name_in_binary += &format!("0{:b} ", character);
}
println!("\"{}\" in binary is {}", name, name_in_binary);
}
这导致:
"Jake" in binary is 01001010 01100001 01101011 01100101
u8
数组;它们与其他u8
数组无法区分。u8
数组进行操作时,应使用Vec<u8>
而不是数组。如果要将String
或str
转换为u8
数组,则可以使用as_bytes
获取一个切片。如果您想从String
获取Vec<u8>
,则可以使用into_bytes
。