Android开发中请求URL中参数含有中文和空格的解决方法
来源:互联网 发布:mac系统numbers教程 编辑:程序博客网 时间:2024/05/19 10:36
在做安卓应用时,碰到要处理URL请求的中文参数,我们需要用到URLEncoder.encode(参数,"utf-8")方法对中文参数进行编码,这样做,能够解决大多数中文参数的乱码问题,当然编码方式不一定是“utf-8”,这取决于你服务器端的编码格式。
但是,若是请求参数中不仅含有中文,而且还含有空格时,还需要做进一步处理。通过URLEncoder.encode()方法处理后,参数的中文乱码是被解决了,但是空格符也会被转码成“+”号而不被服务器识别,这时,你还需要用到replaceAll("\\+","%20")把"+"转换成"%20",这样再提交基本就能获取到你想要的响应结果了。
对于使用URLEncoder.encode()方法时,尽量不要对整个请求URL进行转换,而是分开来使用,即单独对请求参数使用URLEncoder.encode(参数,"utf-8").replaceAll("\\+","%20"),完成后再使用+拼接字符串构建完整的请求路径。下面举一个简单的例子:
例如,请求URL = "http://www.baidudu.com/music?param=明天 你好-牛奶咖啡.mp3" 我们提取请求参数String param="明天 你好 -牛奶咖啡.mp3"; 对它进行转换
param = URLEncoder.encode(param ,"utf-8").replaceAll("\\+","%20"),完成后在构建回原来完整的URL,即URL = "http://www.baidudu.com/music?param="+param;这样,问题就能得到解决了。第一次写博客,有什么不对的请大家多多指教。
- Android开发中请求URL中参数含有中文和空格的解决方法
- get请求时候参数中含有“中文”字段出现乱码问题的原因和解决方法
- iOS 的url中含有中文解决方法
- android 路径中含有中文的解决方法
- JAVA反射使用实例和class.getResource()得到URL中含有中文和空格乱码问题
- url参数中出现+,&,?,',%,#,=,空格等字符的解决方法
- [乐意黎原创]URL中参数变空格的解决方法
- Android中发送网络请求时参数为中文,导致请求的结果不正确的解决方法
- HTTP中URL的get请求,中文参数乱码
- URL路径中含有中文
- url中含有中文字符
- URL参数中&和+被转成空格
- GET方法URL中传递中文参数乱码的解决方法
- 链接中含有中文参数的问题
- Android网络请求URL含有中文
- 使用httpclient下载图片时,url中含有中文字符,导致下载失败的解决方法
- IOS webView 因URL中含有中文加载网页白屏显示的解决方法
- http请求本地文件,路径中含有空格的处理 QT
- libevent介绍及应用
- 首页登录界面翻译问题
- 用java基础实现绘制点自动连接成线、三角形、多边形
- 如何测试CTS4.2
- 修改MyEclipse 10的Servlet模版
- Android开发中请求URL中参数含有中文和空格的解决方法
- char*,const char*和string的相互转换
- atoi和itoa的实现
- 设计模式汇总
- linux内核模块的安装与卸载
- 《高效学习OpenGL》之缓冲区对象 glGenBuffers(), glBindBuffer(), glBufferData(),glMapBuffer()
- 使用wxWidgets如何获得所有的字体
- 【编程工具系列】在Windows下使用gcc编译器
- 去除字符串中的数字,字符串不多于30