收藏
回答

服务号获取用户基本信息乱码问题?

这是我post请求的工具类,请求后的返回的结果是乱码。我用String message = newString(userOpenIds.getBytes(), "UTF-8");转了下结果还是有部分字符是乱码。
如果使用String message = newString(userOpenIds.getBytes("ISO-8859-1"), "UTF-8");结果就会变成全是???(问号)
public static String post(String url, String data) {
    try {
        URL urlObj = new URL(url);
        URLConnection connection = urlObj.openConnection();
        // 要发送数据出去,必须设置为可发送数据状态
        connection.setDoOutput(true);

        OutputStream os = connection.getOutputStream();
        // 写出数据
        os.write(data.getBytes(Charset.forName("utf-8")));
        os.close();
        // 获取输入流
        InputStream is = connection.getInputStream();
        byte[] b = new byte[1024];
        int len;
        StringBuilder sb = new StringBuilder();
        while ((len = is.read(b)) != -1) {
            sb.append(new String(b, 0, len));
        }
        return sb.toString();

    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}


回答关注问题邀请回答
收藏

3 个回答

  • 这都申请了
    这都申请了
    2019-12-27

    首先你要确定一下是哪一步乱码的,传输前乱码、接收时乱码、存入数据库乱码、从数据库读取乱码

    2019-12-27
    有用
    回复 1
    • 2019-12-30
      发送post请求返回结果时是乱码,也就是接收时乱码。
      2019-12-30
      回复
  • 扶苏。
    扶苏。
    2019-12-27

    是其他名字乱码么?还是表情乱码了


    2019-12-27
    有用
    回复 1
    • 2019-12-30
      不是emoji乱码。其他的名字也会乱码,部分字会乱。例如黑龙江的江,双鸭山的山。
      2019-12-30
      回复
  • 祺爸💎
    祺爸💎
    2019-12-27

    emoji吧

    2019-12-27
    有用
    回复 1
    • 2019-12-30
      不是emoji
      2019-12-30
      回复
登录 后发表内容
问题标签