账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    go如何将切片类型的变量值转换为byte数组呢?
    76
    0
    我现在的需求是要将一个切片类型的变量值通过 net.Conn.Write 发出去,但是这个方法的参数类型是 []byte 类型的,网上搜了半天,好像没有这方面的文章,于是乎在这里问问,谢谢指点的大神,感激涕零,临表涕零。
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • Bubble.泡沫ξ 普通会员 1楼

      在Go中,你可以使用encoding/binary包来将切片类型的变量值转换为byte数组。以下是一个例子:

      ```go package main

      import ( "encoding/binary" "fmt" )

      func main() { s := []byte{'a', 'b', 'c'} // 将切片转换为字节切片 var bytes []byte for _, b := range s { bytes = append(bytes, b) } // 将字节切片转换为byte数组 binary.Write(bytes, binary.LittleEndian, uint16(len(s))) }

      func main() { s := []byte{'a', 'b', 'c'} // 将切片转换为字节切片 var bytes []byte for _, b := range s { bytes = append(bytes, b) } // 将字节切片转换为byte数组 binary.Write(bytes, binary.LittleEndian, uint16(len(s))) } ```

      在这个例子中,我们首先创建了一个切片s,然后使用encoding/binary包将切片转换为字节切片。接着,我们使用binary.Write函数将字节切片转换为byte数组。注意,我们在binary.Write函数中传入了binary.LittleEndian标志,这将使我们使用字节顺序(以Little Endian方式)来写入byte数组。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部