2013-01-25 61 views
5

我想通過以下方法從網站獲取一個favicon。我試圖避免//問題,並決定使用URL對象。創建一個url字符串,以獲得一個在fav的圖標

public static Bitmap getBitmapFromURL(URL src) { 
     try { 
      URL url = src; 
      HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
      connection.setDoInput(true); 
      connection.connect(); 
      InputStream input = connection.getInputStream(); 
      Bitmap myBitmap = BitmapFactory.decodeStream(input); 
      return myBitmap; 
     } catch (IOException e) { 
      e.printStackTrace(); 
      return null; 
     } 
    } 

我正在

Bitmap faviconBitmap = getBitmapFromURL(new URL("http", "www"+url, "/favicon.ico")); 

與我的網址設置爲:url = imdb.com

但我失敗,收到以下錯誤:如何

01-24 20:01:33.702: W/System.err(8678): java.io.IOException: Illegal character in authority at index 22: http://www.nytimes.com 
01-24 20:01:33.702: W/System.err(8678): /favicon.ico 

任何建議解決這個問題?

+0

我已經使用了你的代碼,但我得到錯誤「java.io.IOException」,你有什麼想法,我該如何解決它?我也嘗試使用url.trim(),但我很喜歡使用方法「trim()」,因爲它是undefined – Sasa

+1

@Sasa如果你仍然需要幫助,請發佈你自己的新問題。一定要提供相關的代碼來顯示你做了什麼。還包括這個問題的鏈接,以表明你已經完成了你的研究。 –

回答

2

看起來像是在「nytimes.com」後的url末尾有換行符或其他字符。

+2

要增加診斷,OP可以使用'url.trim()'去除不需要的(前後)空白。 –

+0

謝謝代碼大師 – Quantico

+0

@ Code-Apprentice我已經使用了上面的代碼,但是我得到錯誤「java.io.IOException」,你有什麼想法,我該如何解決它?我也嘗試使用url.trim(),但我可以使用方法「trim()」,因爲它是undefined – Sasa