get請求編碼轉換

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();

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章