1

これは、jsonオブジェクトにjsonオブジェクトを作成したクライアント側のコードです。byte []と2つの文字列を配置しました。ビットマップをbyte []に​​変換し、サーブレットで受信しました。httppostを使用して送信しようとしていますそのjson data.howはbyte []と2つの文字列を受け取ることができ、それをブラウザと2つの文字列に表示する必要があります。

public void getServerData(byte[] img, String name, String gender)throws JSONException, ClientProtocolException, IOException {

        ArrayList<String> stringData = new ArrayList<String>();
        DefaultHttpClient httpClient = new DefaultHttpClient();
        ResponseHandler<String> resonseHandler = new BasicResponseHandler();
        HttpPost postMethod = new HttpPost(SERVER_URL);
        postMethod.setHeader("Content-Type", "application/json");
        JSONObject json = new JSONObject("mydata");
        json.put("image", img);
        json.put("name", name);
        json.put("gender", gender);
        postMethod.setEntity(new ByteArrayEntity(json.toString().getBytes(
                "UTF8")));
        String response = httpClient.execute(postMethod, resonseHandler);
        Log.e("response :", response);
    }

int doGet(request,response){}私はそれを受け取る必要があります 。

4

1 に答える 1

1
JSONObject.put

バイト配列を受け入れるオーバーロードがありません。これらのバイトを base64 文字列にエンコードしてみてください。

https://stackoverflow.com/questions/9845767/base64-encoder-javaを参照してください

于 2013-01-17T10:04:18.600 に答える