3
이 이해 {{xxx ": 1000000000000000}은 (는) 유효합니까?Yojson이 int64 (ocaml)을 구문 분석합니다
Yojson.Safe로 구문 분석하는 방법을 잘 모릅니다. 나는 Int64 of int64 _와 같은 것을 찾고있다. 그러나 아무 것도 제공하지 않는다. int에는 int _ 및 _ int가 문자열 _의 _ 밖에 없다.
편집이 내 문제
let x = "{\"xxx\": 10000000000000}"
let json = Yojson.Safe.from_string x
match json with `Assoc [("xxx", `Intlit yyy)] -> yyy | _ -> assert false
입니다 JSON의 유형은 그렇지 않으면 OCaml의 int
및 `Intlit
에 맞는 경우
val json : Yojson.Safe.json = `Assoc [("xxx", `Int 10000000000000)]
편집 – romerun
좋아, 완전히 내 대답을 변경했습니다. –
아, 알겠습니다. Yojson.Safe는 숫자가 Int보다 큰 경우 Intlit로 변환합니다. 그게 내가 놓친거야. – romerun