3
据我了解,这个{“xxx”:1000000000000000}是正确的吗?Yojson解析int64(ocaml)
不知道如何解析它与Yojson.Safe。我正在寻找类似于int64 _的Int64的东西,但没有提供,只有_Int int _和_`Intlit字符串_在api上。
编辑,这是我的问题
let x = "{\"xxx\": 10000000000000}"
let json = Yojson.Safe.from_string x
match json with `Assoc [("xxx", `Intlit yyy)] -> yyy | _ -> assert false
它不会匹配,因为JSON的类型是
val json : Yojson.Safe.json = `Assoc [("xxx", `Int 10000000000000)]
请看编辑 – romerun
好吧,彻底改变了我的答案。 –
啊,我明白了,Yojson.Safe会将其转换为'Intlit,如果这个数字大于'Int。这就是我错过的。 – romerun