public static String Utf8URLencode(String text) {
//text.replace("\n", "%20");
//text.replace("\t", "%0a");
//text.replace(" ", "%0d");
StringBuffer result = new StringBuffer();
for (int i = 0; i < text.length(); i++) {
char c = text.charAt(i); // 遍历每个字符
if (c >= 0 && c <= 255 && c != 13 && c != 10 && c != 32) { // 若为英文 //空格 回车 换行 get请求时单独编码
result.append(c); // 直接拼接
} else { // 若为 中文
byte[] b = new byte[0];
try {
b = Character.toString(c).getBytes("UTF-8");
} catch (Exception ex) {
Log.e("EncodeTools", ex.toString());
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0)
k += 256;
if(c==10||c==13){
result.append("%"+"0"
+ Integer.toHexString(k).toUpperCase(
Locale.getDefault()));
}else{
result.append("%"
+ Integer.toHexString(k).toUpperCase(
Locale.getDefault()));
}
}
}
}
return result.toString();
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。