【问题标题】:Parsing JSON in Go (without Unmarshal)在 Go 中解析 JSON(没有 Unmarshal)
【发布时间】:2014-04-01 18:27:38
【问题描述】:

我需要在 Golang 中解析任意 JSON 结构,以便将它们翻译成另一种语言格式(无论是 C 结构还是 XML),但 Golang 库显然使这无法将编组和解编组为结构和映射.

无论如何,我什至不需要来自 JSON 输入的类似地图的数据结构。我只需要一个递归解析器,甚至可能是 PHP 的 XMLParser 之类的东西,您可以在其中决定自己在每个节点上做什么,这样我就可以在不需要映射或接口的情况下翻译它。

【问题讨论】:

    标签: json parsing go


    【解决方案1】:

    megajson package 中有一个 scanner 包,可以让你自己遍历 json。

    scanner := scanner.NewScanner(strings.NewReader(`{"foo":"bar", 
    "bat":1293,"truex":true,"falsex":false,"nullx":null,"nested":{"xxx":"yyy"}}`))
    
    // Scan for the next JSON token.
    position, token, err := scanner.Scan()
    

    【讨论】:

    • 这很漂亮,正是我想要的!谢谢!
    猜你喜欢
    • 1970-01-01
    • 2018-01-16
    • 2014-09-20
    • 2018-12-18
    • 1970-01-01
    • 2016-12-16
    • 2020-10-07
    • 2021-11-09
    • 1970-01-01
    相关资源
    最近更新 更多