如何在Golang中将ASCII码转换为字节?

3
正如标题所示,我能找到一个函数来给我字节的ASCII码,但不能反过来。

ASCII 是 7 位元,非常适合放入一个字节中。请澄清。 - Volker
我刚开始学习Go语言 - 我想用for循环生成拉丁字母,并将int值解析为字符。如果我问错了问题,对不起。 - zerozero7
3
对于 for c := 'A'; c <='Z'; c++ { fmt.Printf("%c", c) } 这段代码,您可以尝试将 int 值转换为符文。推荐查阅 Golang 官方博客中的 "Strings, bytes, runes and characters in Go" 了解更多相关信息。 - Volker
2
可能是Equivalent of python's ord(), chr() in go?的重复问题。 - icza
1个回答

7

Golang字符串字面量是UTF-8编码的,因为ASCII是UTF-8的子集,而且它的每个字符只有7位,所以我们可以通过强制转换(例如bytes := []byte(str))轻松地将其作为字节获取:

package main

import "fmt"

func main() {
  asciiStr := "ABC"
  asciiBytes := []byte(asciiStr)

  fmt.Printf("OK: string=%v, bytes=%v\n", asciiStr, asciiBytes)
  fmt.Printf("OK: byte(A)=%v\n", asciiBytes[0])
}
// OK: string=ABC, bytes=[65 66 67]
// OK: byte(A)=65

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接