2013-01-25 12 views
5

Sto cercando di ottenere una favicon da un sito Web con il seguente metodo. Ho cercato di evitare // problemi e ho deciso di utilizzare un oggetto URL.Creazione di una stringa di URL per ottenere una favicon in java

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; 
     } 
    } 

Sono in esecuzione

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

con il mio url impostato: url = imdb.com

ma sto venendo a mancare e ottenere il seguente errore:

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 

qualche suggerimento su come Aggiustalo?

+0

ho usato il tuo codice, ma ho ricevuto l'errore "java.io.IOException", hai qualche idea su come posso risolverlo? ho anche provato a usare url.trim() ma sono in grado di usare il metodo "trim()" come non era definito – Sasa

+1

@Sasa Se hai ancora bisogno di aiuto, per favore pubblica una nuova domanda. Assicurati di fornire il codice pertinente per mostrare ciò che hai fatto. Includere anche un link a questa domanda per mostrare che hai fatto la tua ricerca. –

risposta

2

Sembra che tu abbia una nuova riga o qualche altro carattere alla fine di url dopo "nytimes.com".

+2

Per aggiungere a questa diagnosi, l'OP può usare 'url.trim()' per rimuovere gli spazi bianchi indesiderati (precedenti e finali). –

+0

grazie codice-guru – Quantico

+0

@ Code-Apprentice ho usato il codice sopra, ma ho ricevuto l'errore "java.io.IOException", hai qualche idea che come posso risolverlo? ho anche provato a usare url.trim() ma sono in grado di usare il metodo "trim()" come non era definito – Sasa