Android 毕加索没有加载带有土耳其语字符的url
我正在使用毕加索图像加载库,发现它没有加载一些包含土耳其字符的URL 例如,下面的url生成问题 试过但不起作用Android 毕加索没有加载带有土耳其语字符的url,android,picasso,imageurl,turkish,Android,Picasso,Imageurl,Turkish,我正在使用毕加索图像加载库,发现它没有加载一些包含土耳其字符的URL 例如,下面的url生成问题 试过但不起作用 public static String encodeTurkishCharactersInUrl(String url) { String[] list = new String[] {"ü","ç","ı","ö","ğ","ş"," ","Ü","Ç","İ","Ö","Ğ","Ş"}; for (int i = 0; i< list.le
public static String encodeTurkishCharactersInUrl(String url) {
String[] list = new String[] {"ü","ç","ı","ö","ğ","ş"," ","Ü","Ç","İ","Ö","Ğ","Ş"};
for (int i = 0; i< list.length ; i++) {
try {
url = url.replace(list[i], URLEncoder.encode(list[i],"UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return url;
}
公共静态字符串encodeTurkishCharactersInUrl(字符串url){
字符串[]列表=新字符串[]{“ü”、“ç”、“ı”、“ö”、“ğ”、“ş”、“Ü”、“İ”、“Ö”、“Ğ”、“Ş”};
for(int i=0;i
我找到了一个解决方案,使用UTF8编码避免空白,并手动将所有空格替换为%20,现在URL可以正常工作了
public static String encodeTurkishCharactersInUrl(String url) {
String[] list = new String[]{"ü", "ç", "ı", "ö", "ğ", "ş", "", "Ü", "Ç", "İ", "Ö", "Ğ", "Ş"};
for (int i = 0; i < list.length; i++) {
try {
url = url.replace(list[i], URLEncoder.encode(list[i], "UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
url = url.replaceAll(" ", "%20");
return url;
}
公共静态字符串encodeTurkishCharactersInUrl(字符串url){
字符串[]列表=新字符串[]{“ü”、“ç”、“ı”、“ö”、“ğ”、“ş”、“Ü”、“İ”、“Ö”、“Ğ”、“Ş”};
for(int i=0;i