Отсутствующие кавычки в JSON (из объекта Javascript) в JAVA - PullRequest
0 голосов
/ 23 мая 2018

У меня есть Java-приложение, которое получает очень большой «объект Javascript» (например, формат JSON) с сервера (+ 30 тыс. Символов).

Оригинал:

  String json ={  
   ok=true,
   data=   {  
      key1=1.0,
      key2=      [  
         1.5,
         1.5,
         1.5
      ],
      key3=      [  
         {  
            ts=1.526552846892E12,
            msg="random_message"
         },
         {  
            ts=1.526552846892E12,
            msg="random_message"
         }
      ]
   }
};

Основная проблема в том, что на самом деле я получаю что-то вроде этого:

  String json ={  
   ok=true,
   data=   {  
      key1=1.0,
      key2=      [  
         1.5,
         1.5,
         1.5
      ],
      key3=      [  
         {  
            ts=1.526552846892E12,
            msg=random_message
         },
         {  
            ts=1.526552846892E12,
            msg=random_message
         }
      ]
   }
};

Обратите внимание, что я "потерял" цитаты в сообщении.

Основная проблема в том, что я могуНапример, не выполняйте синтаксический анализ JSON с JSONObject, поскольку он не может прочитать этот «неправильный» формат.

Обновление:

Игнорирование получаемой проблемы«поврежденный объект», у меня проблема в том, что я не могу разобрать это, потому что это объект JS (не чистый JSON).

Какой лучший способ добавить двойные кавычки в ключи и строковые значения?

Пример отформатированного JSON:

String json ={  
   "ok":true,
   "data":   {  
      "key1":1.0,
      "key2":      [  
         1.5,
         1.5,
         1.5
      ],
      "key3"=      [  
         {  
            "ts":1.526552846892E12,
            "msg":"random_message"
         },
         {  
            "ts":1.526552846892E12,
            "msg":"random_message"
         }
      ]
   }
};
...