0

我正在尝试通过 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 行导致异常。注意:问题区域是字符串部分 \KB,如果字符串不包含此反斜杠,一切正常。

我试过:

message = message.replaceAll("\\\\", "\");

message = message.replaceAll("\\\\", "%5C");

它没有引起我的任何异常,但收到的消息如下:

amount1\KB

amount2\KB

amount1%5CKB

amount2%5CKB

JSONObject.escape(message)也没有工作。

4

1 回答 1

0

好吧,您已经写了为什么在显示您的回复之前将 %5C 替换为 \ ?

于 2011-02-25T09:40:21.693 回答