2010-05-25 14 views
6

Esiste un modo per convertire una stringa Base64 in un'immagine in Android? Sto ricevendo questa stringa base64 in un XML dal server connesso tramite socket.Conversione della stringa base64 in un'immagine Android

+1

possibile duplicato (http://stackoverflow.com/questions/4830711/how-to-convert- un-image-in-Base64-perl g) –

risposta

2

Ci sono ora le utilità Base64 in Android, ma sono diventate disponibili solo con Android OS 2.2.

0

Dopo aver fallito nell'ottenere soluzioni (anche su Stackoverflow), ho creato un plug-in che converte Base64 PNG Strings in file che ho condiviso here. Spero che questo aiuti.

0

Se si desidera convertire base64 stringa al file immagine (ad esempio .png ecc) e salvarlo in una certa cartella è possibile utilizzare questo codice:

byte[] btDataFile = Base64.decode(base64Image, Base64.DEFAULT); 
String fileName = YOUR_FILE_NAME + ".png"; 
try { 

    File folder = new File(context.getExternalFilesDir("") + /PathToFile); 
    if(!folder.exists()){ 
    folder.mkdirs(); 
    } 

    File myFile = new File(folder.getAbsolutePath(), fileName); 
    myFile.createNewFile(); 

    FileOutputStream osf = new FileOutputStream(myFile); 
    osf.write(btDataFile); 
    osf.flush(); 
    osf.close(); 
} catch (FileNotFoundException e) { 
    e.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

E assicurarsi che si hanno dato il seguente autorizzazione necessaria nel file manifest: [? Come convertire un immagine in stringa Base64]

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
Problemi correlati