使用volley发送数据 - utf8

时间:2014-08-19 19:41:53

标签: android mysql utf-8 android-volley

我使用下面的代码将数据发送到服务器。 但是当我发送数据时,mysql中的数据是???。如何将数据发送到utf 8?

private void sendDataToDataBase(final String fperson,final String lperson){
    RequestQueue queue = MyVolley.getRequestQueue();
    StringRequest myReq = new StringRequest(Method.POST,
            "mylink",
            createMyReqSuccessListener(),
            createMyReqErrorListener()) {

        protected Map<String, String> getParams() throws com.android.volley.AuthFailureError {
        Map<String, String> params = new HashMap<String, String>();
        params.put("fname", fperson);
        params.put("lname", lperson);
        return params;
            };
        };
        queue.add(myReq);
}

1 个答案:

答案 0 :(得分:2)

我自己用来将包含utf-8字符串的数据上传到服务器的一个解决方案(不仅包括Volley,还包括其他库)是将其编码为Base64,然后在服务器中对其进行解码。这样我就可以确保将确切的数据传递给服务器。

这是我用于编码的代码:

data = str.getBytes("UTF-8");
reqBase64 = Base64.encodeToString(data, Base64.DEFAULT);