为了账号安全,请及时绑定邮箱和手机立即绑定

解组 json 流(不以换行符分隔)

解组 json 流(不以换行符分隔)

Go
慕哥6287543 2021-10-04 15:32:06
我想将 JSON 流转换为对象流。使用换行符分隔的 JSON 很容易做到这一点。来自 Go 文档:https : //golang.org/pkg/encoding/json/#Decoder.Buffered但是,我需要从这样的 JSON 数组生成一个流:        [{"Name": "Ed", "Text": "Knock knock."},        {"Name": "Sam", "Text": "Who's there?"},        {"Name": "Ed", "Text": "Go fmt."},        {"Name": "Sam", "Text": "Go fmt who?"},        {"Name": "Ed", "Text": "Go fmt yourself!"}]什么是执行此操作的高性能方法?我考虑过这种方法:去掉外面的尖括号当有匹配的顶级大括号时,解组大括号(包括)之间的字符串以一次获取一个顶级对象。我不想这样做,因为两次扫描字符串的每个部分会影响性能。我能做的最好的选择是复制 Golang encoding/json 包中解码器的源代码并修改它,以便它返回一个 Reader 一次吐出一个对象。但是对于这样一个简单的要求来说,这似乎太多了。有没有更好的方法来解码 JSON 数组流?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 175 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信