在Go中将字符串转换为二进制 [英] Convert string to binary in Go
本文介绍了在Go中将字符串转换为二进制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在Go中将字符串转换为其二进制表示形式?
示例:
输入:A
输出:01000001
在我的测试中, fmt.Sprintf(%b,75)
仅适用于整数。
func toBinaryRunes(s)>解决方案
你必须迭代字符串的符号:字符串)string {
var buffer bytes.Buffer
for _,runeValue:= range s {
fmt.Fprintf(& buffer,%b,runeValue)
}
return fmt.Sprintf(%s,buffer.Bytes())
}
或在字节上:
func toBinaryBytes(s string)string {
var buffer bytes.Buffer
for i:= 0;我<镜片); i ++ {
fmt.Fprintf(& buffer,%b,s [i])
}
return fmt.Sprintf(%s,buffer.Bytes())
现场:
http://play.golang.org/p/MXZ1Y17xWa
How do you convert a string to its binary representation in Go?
Example:
Input: "A"
Output: "01000001"
In my testing, fmt.Sprintf("%b", 75)
only works on integers.
解决方案
You have to iterate over the runes of the string:
func toBinaryRunes(s string) string {
var buffer bytes.Buffer
for _, runeValue := range s {
fmt.Fprintf(&buffer, "%b", runeValue)
}
return fmt.Sprintf("%s", buffer.Bytes())
}
Or over the bytes:
func toBinaryBytes(s string) string {
var buffer bytes.Buffer
for i := 0; i < len(s); i++ {
fmt.Fprintf(&buffer, "%b", s[i])
}
return fmt.Sprintf("%s", buffer.Bytes())
}
Live playground:
http://play.golang.org/p/MXZ1Y17xWa
这篇关于在Go中将字符串转换为二进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文