24

I am trying to parse the following JSON format into a Object.

{
  "info1": "blah blah",
  "info2": "blah blah2",
  "info3": 1391673663,
  "info4": "blah4",
  "info5": {
    "AAA": 0.1,
    "BBB": 0.3,
.....
  }
}

But the problem is under [info5] list, name like "AAA", "BBB" and their related values are dynamic and always changing.

How should I make my Object to satisfy this kind of structure? I want to put those values into a Map if possible.

So that I can easily get "AAA" and its Related values.

Any input will be so helpful for me.

29

JSON Deserialize-Untyped

You will have to use JSON.deserializeUntyped method that will deserializes a JSON representation of an appliance object into a map that contains primitive data types and further collections of primitive types.

Something like below should work,

Map<String, Object> m = (Map<String, Object>)JSON.deserializeUntyped(jsonInput);
  Map<String, Object>  m2=(Map<String, Object>)m.get('info5');
  List<decimal> d=new List<decimal>();

   for(String s:m2.keyset()){
      decimal t=(decimal)m2.get(s);
       d.add(t);
   }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.