登录
首页 >  Golang >  Go问答

“顶级值后的无效字符'\x00'”

来源:Golang技术栈

时间:2023-04-04 13:54:01 333浏览 收藏

一分耕耘,一分收获!既然打开了这篇文章《“顶级值后的无效字符'\x00'”》,就坚持看下去吧!文中内容包含golang等等知识点...希望你能在阅读本文后,能真真实实学到知识或者帮你解决心中的疑惑,也欢迎大佬或者新人朋友们多留言评论,多给建议!谢谢!

问题内容

在 for 循环中解组 json 时出现此错误。第一次通过循环解组很好,但在下一次迭代中我得到了这个错误。

我是 golang 新手,这个错误信息不清楚。有人可以解释在什么情况下会发生此错误以及我应该如何避免它。

正确答案

谢谢你回答我的问题。

这个错误是由于不正确的 json 造成的,之前没有更多的故事,

我有一个 json.RawMessage 类型的字段 详细信息 我有 SELECT 查询,我试图从表中读取 json 并扫描到 详细信息 并将其附加到结构中。

在 for 循环结束后,当我查看 详细 的JSON 时,它会多次获得相同的记录,有无结束大括号。在考虑了这么多之后,我发现使用 byte 铸造细节很有帮助。

例如:而不仅仅是 rows.Scan(&detail) 试试这个: rows.Scan((*[]byte)(&detail)) 解决了上述问题

好了,本文到此结束,带大家了解了《“顶级值后的无效字符'\x00'”》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表