doukanwen4114
doukanwen4114
2015-04-23 23:59
浏览 92
已采纳

Golang-将int添加到字节数组的末尾

I am trying to add an int to the end of a byte array in Golang.
This is my current code:

nameLengthBytes := []byte{32, 32}
nameLength := len(name)

The nameLengthBytes creates 2 spaces, and what I'm looking for is a way to add the nameLength to the end of the nameLengthBytes.

Examples:
if name length is 7, I want the array to be: {32, 55}
If name length is 12, I want the array to be {49, 50}

The problem is that sometimes the name is shorter than 10 so I need to fill up with a leading zero.

图片转代码服务由CSDN问答提供 功能建议

我正在尝试在Golang的字节数组末尾添加一个整数。
这是我的 当前代码:

  nameLengthBytes:= [] byte {32,32} 
nameLength:= len(name)
   
 
  

nameLengthBytes 创建2个空格,我正在寻找一种将 nameLength 添加到 nameLengthBytes 末尾的方法 。

示例:
如果名称长度为7,我希望数组为:{32,55}
如果名称长度为 12,我希望数组为{49,50}

问题是有时名称短于10,所以我需要用前导零填充。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • doutinghou6980
    doutinghou6980 2015-04-24 00:13
    已采纳

    You want a space-padded ascii representation of a number as bytes? fmt.Sprintf produces a string, which you can then convert to bytes.

    Here's some code, or run it on the playground.

    package main
    
    import "fmt"
    
    func main() {
        bs := []byte(fmt.Sprintf("%2d", 7))
        fmt.Println(bs)
    }
    
    点赞 评论

相关推荐