android URL 中文解析问题
2015-04-02 00:37
423 查看
对于一些有带中文的URL如果用URLEncoder.encode(url, "utf-8")来解析的话。前面的冒号,斜杠,也会解析成utf-8编码。但实际上我们只想转化中文字符。因此写了个函数,对于斜杠和冒号等ascoii字符不转化,而只转化飞爱是从你字符。
<span style="white-space:pre"> </span>public static String toURLString(String s) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c >= 0 && c <= 255) {
sb.append(c);
} else {
try {
sb.append(URLEncoder.encode(String.valueOf(c), "utf-8"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return sb.toString();
}
public static void main(String[] args) throws UnsupportedEncodingException {
String url = "http://www.baidu.com/我是中文.jpg";
System.out.println(URLEncoder.encode(url, "utf-8"));
System.out.println(toURLString(url));
}
<span style="white-space:pre"> </span>public static String toURLString(String s) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c >= 0 && c <= 255) {
sb.append(c);
} else {
try {
sb.append(URLEncoder.encode(String.valueOf(c), "utf-8"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return sb.toString();
}
public static void main(String[] args) throws UnsupportedEncodingException {
String url = "http://www.baidu.com/我是中文.jpg";
System.out.println(URLEncoder.encode(url, "utf-8"));
System.out.println(toURLString(url));
}
相关文章推荐
- Android中文URL乱码问题 解决
- android sax 解析xml中文编码问题
- 关于使用Tomcat搭建的Web项目,出现 URL 中文乱码的问题解析
- android下解析xml文件遇到中文问题
- 关于解析URL中中文问题的分析
- android 4.1.1~4.1.2出现解析url异常问题处理
- java 输入输出流和File简单解析(附android中文乱码问题解决)
- android解析xml中文乱码问题
- Android url中文乱码问题及解决办法
- JSP中js传递和解析URL参数以及中文转码和解码问题
- 解决android中XML解析的中文显示问题
- android url中中文参数乱码问题的解决
- android下解析xml文件遇到中文问题
- 解析URL中文乱码问题:粗略
- 关于android编码问题-URL中文编码-Activity中文编码与.java编码
- Android url中文编码问题
- 关于Android使用HttpURLConnection传输含有中文JSON数据的报错、乱码问题
- android下解析xml文件遇到中文问题
- Android解析socket或http流中文编码问题
- JSP中js传递和解析URL参数以及中文转码和解码问题