Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Set;
- import com.google.gson.*;
- import com.google.gson.JsonObject;
- import com.google.gson.JsonElement;
- import java.util.Iterator;
- import java.util.List;
- import java.util.ArrayList;
- import org.json.*;
- public class JsonParsing {
- static JsonParser parser = new JsonParser();
- public static void createHashMapFromJsonString(String json, int row_num)
- {
- JsonObject object = (JsonObject) parser.parse(json.toString());
- Set<Map.Entry<String, JsonElement>> set = ((JsonObject) object).entrySet();
- Iterator<Map.Entry<String, JsonElement>> iterator = set.iterator();
- ArrayList<String> map = new ArrayList<String>();
- while (iterator.hasNext()) {
- Map.Entry<String, JsonElement> entry = iterator.next();
- String key = entry.getKey();
- JsonElement value = entry.getValue();
- if (null != value) {
- if (!value.isJsonPrimitive()) {
- if (value.isJsonObject()) {
- createHashMapFromJsonString(value.toString(), row_num);
- } else if (value.isJsonArray() && value.toString().contains(":")) {
- ArrayList<String> list = new ArrayList<>();
- JsonArray array = value.getAsJsonArray();
- if (null != array) {
- for (JsonElement element : array) {
- createHashMapFromJsonString(element.toString(), row_num);
- }
- map.add(key+list);
- }
- }
- else if (value.isJsonArray() && !value.toString().contains(":"))
- {
- map.add(key+value.getAsJsonArray());
- }
- }
- else
- {
- map.add(key+value.getAsString());
- }
- }
- map.add(key+value.toString());
- System.out.println(key+":"+value+":"+row_num);
- }
- }
- public static void main(String args[])
- {
- String json_input = "{"MedicationOrders":[{"AHFS":["28:08.08"]}]}";
- int row_num = 0;
- if(json_input.trim().charAt(0) == '[')
- {
- try
- {
- JSONArray jsonArray = new JSONArray(json_input);
- for (int i = 0; i < jsonArray.length(); i++)
- {
- JSONObject jsonobject = jsonArray.getJSONObject(i);
- String json = jsonobject.toString();
- createHashMapFromJsonString(json,row_num);
- row_num++;
- }
- }
- catch (JSONException e)
- {
- }
- }
- else
- {
- createHashMapFromJsonString(json_input,row_num);
- }
- }
- }
Add Comment
Please, Sign In to add comment