Я получаю строку в ответе JSON.Он содержит тире (-
), однако вместо него я получаю некоторые специальные символы в строке.
Я пытался декодировать его с использованием UTF-8, но безуспешно.
Вот эта строка:
String subject =
Содержит –
в теме.
Как правильно ее декодировать?
Я использую следующий код Java, из которогоЯ получаю ответ JSON:
try{
HttpGet httpGet = new HttpGet(WEB_SERVICE_URL);
String AUTHORIZATION_VALUE = "BEARER "+ "KEY"
httpGet.setHeader(AUTHORIZATION_KEY,AUTHORIZATION_VALUE);
String responseBody = "";
try(CloseableHttpResponse responseN = HttpClients.createDefault().execute(httpGet)){
responseBody = EntityUtils.toString(responseN.getEntity());
}catch (IOException e) {
e.printStackTrace();
}
JSONObject jsonObj = JSONFactoryUtil.createJSONObject(responseBody.toString());
jsonArray = jsonObj.getJSONArray("messages");
} catch (Exception e) {
e.printStackTrace();
}
В объекте json для одного из атрибутов я получаю закодированную строку, как указано ниже.Заранее спасибо!
ОБНОВЛЕНИЕ: -
Я изменил свой код следующей строкой,
responseBody = EntityUtils.toString(responseN.getEntity(), "utf-8");
Но удача не сработала.Однако строка заменяется с –
на –
.
Я ссылался на несколько ссылок для дальнейшего декодирования этого специального символа, но я не добился успеха.Любая помощь будет действительно заметной.Заранее спасибо!