当我在0x80或更高的字符串处向字符串添加单个字节时,golang将在我的字节之前添加0xc2。 我认为这与utf8 runes有关。无论哪种方式,我如何只在字符串末尾添加0x80?
示例:
var s string = ""
len(s) // this will be 0
s += string(0x80)
len(s) // this will be 2, string is now bytes 0xc2 0x80
答案 0 :(得分:0)
如果我使用string(0x80)
转换字节,我还没有找到避免添加该字符的方法。但是,我确实发现如果我将整个字符串更改为一个字节片段,然后添加字节,然后切换回字符串,我可以在字符串中获得正确的字节顺序。
示例:
bytearray := []byte(some_string)
bytearray = append(bytearray, 0x80)
some_string = string(bytearray)
有点愚蠢的工作,如果有人找到更好的方法,请发布。