常见问题之Golang——在Go中返回的中文文本中包含菱形问号乱码
背景
日常我们开发时,会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家,让其还在深坑中的小伙伴有绳索能爬出来。
同时在这里也欢迎大家把自己遇到的问题留言或私信给我,我看看其能否给大家解决。
开发环境
- 系统:windows10
- 语言:Golang
- golang版本:1.18
内容
错误
在Go中返回的文本中包含菱形问号乱码
这是一个��测试������文本
造成原因:
byte转中文时出现多余的byte没有有效解析为中文导致
解决方案:
str := "这是一个测试文本"
str2 := []rune(str)
fmt.Println(string(str2[:])) // 进行处理后的结果
fmt.Println(str[:4]) // 会出现乱码的情况
参见内容
https://blog.csdn.net/weixin_30443747/article/details/96759281
https://www.cnblogs.com/kaichenkai/p/10958939.html
本文声明:
88x31.png知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。
网友评论