【问题标题】:How to convert string to binary string in Rust?如何在 Rust 中将字符串转换为二进制字符串?
【发布时间】:2020-08-14 18:07:32
【问题描述】:

我有一个字符串,我想把它转换成二进制字符串。

let content = request_version.to_string() + &request_length.to_string() + request_json;

【问题讨论】:

    标签: rust


    【解决方案1】:

    您可能指的是 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
    

    【讨论】:

      【解决方案2】:

      Rust 中没有二进制字符串这样的东西。有字节字符串,这是一种特殊的文字,用于创建u8 的数组;它们与 u8 的其他数组无法区分。

      当您操作u8 的数组时,您希望使用Vec&lt;u8&gt;,而不是数组。如果要将Stringstr 转换为u8 的数组,则使用as_bytes 获得一个切片。如果您想从String 中获取Vec&lt;u8&gt;,可以改用into_bytes

      【讨论】:

        猜你喜欢
        • 2020-12-31
        • 1970-01-01
        • 2023-03-30
        • 2016-01-14
        • 2014-08-02
        • 1970-01-01
        • 2019-08-23
        • 1970-01-01
        相关资源
        最近更新 更多