跳转到主内容
极星编程网:以代码为星,赴技术山海!

java向php post数据时, 中文显示问号问题

php post 中文 php post 中文 java 我验证了一下几个状态 echo "你好";    // 你好 echo json_encode("你好")  // /u4f60/u597d  这个我也无所谓 echo $_POST['key']  // ?? 实际上我是在弄android, 连接用的包是org.apache.http下的 求解如何向php post中文 回复讨论(解决方案) 是编码的问题 echo base64_encode($_POST['key']); 贴出结果 编码问题,收到的post值需要转码,iconv echo base64_encode($_POST['key']); 贴出结果 发送 ‘你’  显示Pw== echo base64_decode('Pw=='); //输出 ? 这就是说在发送的时候‘你’已经变成‘?’了 echo base64_decode('Pw=='); //输出 ? 这就是说在发送的时候‘你’已经变成‘?’了 decode输出的确实是'?' 我想应该是java和php编码问题吧 因为我php如果变量里存中文,去mysql做查询也是没问题的 你知道php.ini里怎么改编码吗 echo base64_decode('Pw=='); //输出 ? 这就是说在发送的时候‘你’已经变成‘?’了 好像是有可能发送的时候错了 不管什么中文单字都是Pw== 如果是两个字都是Pz8= 是这样得到request的 里面的addHeader不知道有没有意义
List listParams = new ArrayList(); if (params != null) { for (String name : params.keySet()) { listParams.add(new BasicNameValuePair(name, params .get(name))); } } try { UrlEncodedFormEntity entity = new UrlEncodedFormEntity( listParams); HttpPost request = new HttpPost(url); request.addHeader("charset", HTTP.UTF_8); request.setEntity(entity); return request;
这个?那个?你好像遇到了编码转换问题、mark一下 好了谢谢各位我已经解决了
UrlEncodedFormEntity entity = new UrlEncodedFormEntity( listParams);//改成UrlEncodedFormEntity entity = new UrlEncodedFormEntity( listParams,HTTP.UTF-8);
有可能的话就下把它注释掉

相关文章