1
在我的應用中,有一個ImageView顯示來自URL的圖片。圖片的網址編碼不正確
Bitmap bitmap=null;
URL imageUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection)imageUrl.openConnection();
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
conn.setInstanceFollowRedirects(true);
InputStream is=conn.getInputStream();
OutputStream os = new FileOutputStream(f);
Utils.CopyStream(is, os);
os.close();
bitmap = decodeFile(f);
return bitmap;
這僅適用於網址,有數字或英文字母,並且不與任何其他字符的工作(如空格):
好
我用這個方法下載圖像網址:http://site.com/images/image.png
不良網址:http://site.com/images/image 1.png
我試圖chage URL編碼(URLEncoder.encode),但它改變了整個URL(斜槓等)。
編碼後需要替換一些字符嗎?或者有更好的辦法?
謝謝:)
謝謝! :)但仍然有一點問題:它不適用於希伯來語字符。我該怎麼辦? – eviabs
我認爲你需要使用URLEncoder明確地對希伯來字符部分進行編碼。似乎只有少數非ASCII字符被URI所關注,請查看[here](http://developer.android.com/reference/java/net/URLEncoder.html)中的「Encoding and Decoding URI Components」部分,並檢查這[鏈接](http://stackoverflow.com/a/2744184/909271) – 1O1
你使用的是URL還是IRI(國際化資源標識符)? – 1O1