Я пытаюсь отправить сообщение через JSONObject через http.
JSONObject s=new JSONObject();
s.put("addresses", sno);
s.put("message",message);
s.put("senderName",shortcode);
OutputStreamWriter wr = new OutputStreamWriter(connection.getOutputStream());
wr.write( s.toJSONString());
wr.flush();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(connection.getInputStream()));
Сообщение похоже на:
String message= “amount1\\KB \n amount2\\KB”
Ожидаемое полученное сообщение:
amount1\KB
amount2\KB
Теперь проблема в том, что http-сервер возвращает мне код ответа 500. И вызывает исключение в строке 9.
Примечание. Проблемной областью является строковая часть \ КБ, если строковая переменная не содержит этот обратный слеш, все идет хорошо.
Я пытался:
message = message.replaceAll("\\\\", "\");
message = message.replaceAll("\\\\", "%5C");
это не вызвало никаких исключений, но полученное сообщение было следующим:
amount1\KB
amount2\KB
и
amount1%5CKB
amount2%5CKB
JSONObject.escape(message)
также не работает.