簡體   English   中英

如何解決java.net.MalformedURLException:找不到協議:android中的9

[英]How to resolve java.net.MalformedURLException: Protocol not found: 9 in android

我正在嘗試使用BitmapFactory從URL( http://www.elifeshopping.com/images/stories/virtuemart/product/thumbnail(2).jpg )在Android應用程序中加載圖像,代碼如下:

try {
            // ImageView i = (ImageView)findViewById(R.id.image);
            bitmap = BitmapFactory.decodeStream((InputStream) new URL(url)
                    .getContent());
            i.setImageBitmap(bitmap);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

我在這里

05-03 15:57:13.156: W/System.err(1086): java.net.MalformedURLException: Protocol not found: 9
05-03 15:57:13.167: W/System.err(1086):     at java.net.URL.<init>(URL.java:273)
05-03 15:57:13.167: W/System.err(1086):

at java.net.URL.<init>(URL.java:157).

請告訴我我做錯了什么。

我用了

productImgUrl = productImgUrl.replaceAll(" ", "%20");

我將所有空格替換為%20

它為我工作..

謝謝大家的回應

請告訴我我做錯了什么。

我認為問題在於您正在使用無效的URL字符串調用URL構造函數。 實際上,異常消息暗示URL字符串以“ 9:”開頭。 (“協議”組件是URL的第一個冒號之前的字符序列。)

如果URL字符串確實是:

“ http://www.elifeshopping.com/images/stories/virtuemart/product/thumbnail(2).jpg”

所以我推斷這是...事實上...其他 在調用URL構造函數以了解其真正含義之前,先將其打印出來。

(您還應該%轉義URL路徑中的空格字符……但是我懷疑這是否可以解決此特殊的異常化身。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM