以前做jsp时是这样解决的
String str = new String(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8");应该可以参考下

解决方案 »

  1.   


    getBytes("ISO-8859-1")起码你知道你传过来的是ISO-8859-1编码啊,才可以这样转换,我传过来的都不知道什么编码了,明明在客户端都已经设置成为utf-8了。你的方法不行了在我这行不通啊、、、、
      

  2.   

    在返回结果的字符串也做一下编码处理试试:System.out.println("diaryjson:"+URLDecoder.decode(sb.toString(),"utf-8"));
      

  3.   

    URLDecoder.decode是解码把。
    LZ把发送的数据用URLEncoder.encode编码下,在接收到时再用URLDecoder.decode解码下
      

  4.   


    网上说的这些个方法我都试过了!!!你说的方法我也试过了!!!
    这是生成json的方法最后返回的就是你说的。public String MakeDiaryJson(String title,String context,String createtime,String lastmodifytime, int user_id) throws Exception{
    String diaryjson="";
    JSONObject json = new JSONObject();
    try {
    //diary中存入日记标题
    json.put("title", title);
    //diary中存入日记内容
    json.put("context", context);
    //diary中存入日记创建时间
    json.put("createtime", createtime);
    //diary中存入日记最后一次修改时间
    json.put("lastmodifytime", lastmodifytime);
    //diary中存入日记外键,就是这篇日记是属于哪个用户的
    json.put("user_id", user_id);
    diaryjson = json.toString();
    URLDecoder.decode(diaryjson,"utf-8");
    } catch (JSONException e) {
    // TODO Auto-generated catch block
    Log.i("JSonInfo:", "MakeDiaryJson create failure!!!!");
    }
    return URLDecoder.decode(diaryjson,"utf-8");
    };服务器的代码:public String execute() throws Exception {
    // TODO Auto-generated method stub
    System.out.println("execute()方法被执行了!!!");
     try {
    BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream) request.getInputStream()));
      
     String line = "";
     StringBuilder sb = new StringBuilder();
     while((line = br.readLine())!=null){
     sb.append(line);
     }
     System.out.println("diaryjson:"+URLDecoder.decode(sb.toString(),"utf-8"));  } catch (IOException e) {
    // TODO Auto-generated catch block
    System.out.println("diaryjson receive failure!!!!");

    }  
      

  5.   


    网上说的这些个方法我都试过了!!!你说的方法我也试过了!!!
    这是生成json的方法最后返回的就是你说的。public String MakeDiaryJson(String title,String context,String createtime,String lastmodifytime, int user_id) throws Exception{
    String diaryjson="";
    JSONObject json = new JSONObject();
    try {
    //diary中存入日记标题
    json.put("title", title);
    //diary中存入日记内容
    json.put("context", context);
    //diary中存入日记创建时间
    json.put("createtime", createtime);
    //diary中存入日记最后一次修改时间
    json.put("lastmodifytime", lastmodifytime);
    //diary中存入日记外键,就是这篇日记是属于哪个用户的
    json.put("user_id", user_id);
    diaryjson = json.toString();
    URLDecoder.decode(diaryjson,"utf-8");
    } catch (JSONException e) {
    // TODO Auto-generated catch block
    Log.i("JSonInfo:", "MakeDiaryJson create failure!!!!");
    }
    return URLDecoder.decode(diaryjson,"utf-8");
    };服务器的代码:public String execute() throws Exception {
    // TODO Auto-generated method stub
    System.out.println("execute()方法被执行了!!!");
     try {
    BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream) request.getInputStream()));
      
     String line = "";
     StringBuilder sb = new StringBuilder();
     while((line = br.readLine())!=null){
     sb.append(line);
     }
     System.out.println("diaryjson:"+URLDecoder.decode(sb.toString(),"utf-8"));  } catch (IOException e) {
    // TODO Auto-generated catch block
    System.out.println("diaryjson receive failure!!!!");

    }  

    return URLDecoder.decode(diaryjson,"utf-8");//这句是解码代码,发送时用编码
      

  6.   


    网上说的这些个方法我都试过了!!!你说的方法我也试过了!!!
    这是生成json的方法最后返回的就是你说的。public String MakeDiaryJson(String title,String context,String createtime,String lastmodifytime, int user_id) throws Exception{
    String diaryjson="";
    JSONObject json = new JSONObject();
    try {
    //diary中存入日记标题
    json.put("title", title);
    //diary中存入日记内容
    json.put("context", context);
    //diary中存入日记创建时间
    json.put("createtime", createtime);
    //diary中存入日记最后一次修改时间
    json.put("lastmodifytime", lastmodifytime);
    //diary中存入日记外键,就是这篇日记是属于哪个用户的
    json.put("user_id", user_id);
    diaryjson = json.toString();
    URLDecoder.decode(diaryjson,"utf-8");
    } catch (JSONException e) {
    // TODO Auto-generated catch block
    Log.i("JSonInfo:", "MakeDiaryJson create failure!!!!");
    }
    return URLDecoder.decode(diaryjson,"utf-8");
    };服务器的代码:public String execute() throws Exception {
    // TODO Auto-generated method stub
    System.out.println("execute()方法被执行了!!!");
     try {
    BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream) request.getInputStream()));
      
     String line = "";
     StringBuilder sb = new StringBuilder();
     while((line = br.readLine())!=null){
     sb.append(line);
     }
     System.out.println("diaryjson:"+URLDecoder.decode(sb.toString(),"utf-8"));  } catch (IOException e) {
    // TODO Auto-generated catch block
    System.out.println("diaryjson receive failure!!!!");

    }  

    return URLDecoder.decode(diaryjson,"utf-8");//这句是解码代码,发送时用编码
    用什么编码?是用encodeuricomponent()?
      

  7.   

    java中的URLEncoder和URLDecoder类处理编码与解码问题编码:URLEncoder.encode(origialStr,"UTF-8");
    解码:URLDecoder.decode(sb.toString(),"utf-8");
      

  8.   

    StringEntity rentity = new StringEntity(jsonStr, "UTF-8");  这样试下。