说我有一些中等复杂的JSON,比如
{
"revenue": 100,
"products":[
{"name": "Apple", "price": 50},
{"name": "Banana", "price": 50}
]
}
显然这有点做作,但是使用JsonLoader将它映射到猪的最佳方法是什么。
我试过
a = LOAD 'test.json' USING
JsonLoader('revenue:int,products:[(name:chararray,price:int)]');
或
a = LOAD 'test.json' USING
JsonLoader('revenue:int,products:[{(name:chararray,price:int)]}');
但是,当我DUMP A
时,我得到(100,)
。
我也试过
a = LOAD '/json/complex.json'
USING JsonLoader('revenue:int,products:[{name:chararray,price:int}]');
ERROR 1200: <line 1, column 28> mismatched input 'chararray' expecting LEFT_PAREN
出错。
解析这个以供将来使用的最佳方法是什么?
由于
答案 0 :(得分:1)
对后代来说,
a = LOAD 'test.json' USING
JsonLoader('revenue:int,products:{(name:chararray,price:int)}');