0

HTTP 経由で JSONObject 経由でメッセージを送信しようとしています。

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 に答える