这是一种简单的方法:
func stringToBin(s string) (binString string) {
for _, c := range s {
binString = fmt.Sprintf("%s%b",binString, c)
}
return
}
正如我在对另一个答案的评论中所包括的那样,您还可以使用变体"%s%.8b"
,该变体将在字符串中用前导零填充,如果您需要或想要表示8位…但是,如果您的字符需要8位以上,则不会有任何区别表示,例如希腊字符:
Φ1110100110
λ1110111011
μ1110111100
或这些数学符号打印14位:
≠10001001100000
?10001010000010
?10001011000101
因此,请注意:这里的示例仅是满足原始??帖子中标准的简单演示,而不是使用Unicode代码点的base2表示形式的可靠方法。