2011-07-26 12 views
-1

私のコードは、そのオブジェクトのあるjsonobejectは、そのデータが計数JSONノード

String json = IOUtils.toString(is); 
JSONObject jo = new JSONObject(json); 
ここ

「ジョー」があり、一部のデータがされている。

{ 
"cargoDetails":[{ 
"noOfPackages":"2", 
"packType":"AUG", 
"uom":"LB", 
"packLength":"10", 
"actualWt":"5", 
"packHeight":"2", 
"packWidth":"4", 
"packDescription":"description", 
"currId":"1", 
"shipmentMode":"1"}, 
{"noOfPackages":"2", 
"packType":"BAG", 
"uom":"KG", 
"packLength":"10", 
"actualWt":"5", 
"packHeight":"2", 
"packWidth":"4", 
"packDescription":"description", 
"currId":"1", 
"shipmentMode":"1"}], 
"type":"air", 
"userId":"KOTESWAR", 
"customerId":"CUST00168", 
"contractId":"CONTRACT0000576", 
"originTerminalId":"FINBOM", 
"destinationTerminalId":"FINDEL", 
"ShipperId":"CUST00003", 
"serviceLevelId":"STD", 
"paymentTerms":"Prepaid", 
"terminalId":"FINBOM", 
"originDepartment":"AE", 
"destinationDepartment":"AI", 
"departurePort":"INBOM", 
"destinationPort":"BOM", 
"totalNoPcs":"4", 
"totalActualWt":"5", 
"totalVol":"10" 
} 

kで私はcargodetailsオブジェクトを送ることができます残りの2つは予約されています 私の質問はどのくらいの数のオブジェクトがJOにあるかを見つける方法です。そのjoと私はループを反復することができますので 。

答えて

0

オブジェクトに含まれるキーの数を定義する方法については、Object.keys(json)を使用する必要があります。Object.keys(json)は、すべての独自のキーを持つ配列を返します。しかし、それはむしろ新しい機能であり、現在使用されているすべてのブラウザには実装されていません。 Object.keysがなければで各キーをテストして(for key in json)ループを使用しなければなりません。

ところで、hasOwnPropertyは一部のブラウザでは実装できません。

関連する問題