Je voudrais décoder une chaîne base64 et la transformer en un fichier (au format pdf/jpg) et l'enregistrer sur l'appareil, comme par exemple dans (/storage/emulated/0/Download/file.pdf).
Pour encoder un fichier, j'utilise ce code:
File originalFile = new File("/mnt/sdcard/download/file.pdf");
String encodedBase64 = null;
try {
FileInputStream fileInputStreamReader = new FileInputStream(originalFile);
byte[] bytes = new byte[(int) originalFile.length()];
fileInputStreamReader.read(bytes);
encodedBase64=Base64.encodeToString(bytes,Base64.NO_WRAP);
messaggio=encodedBase64.toString();
//encodedBase64 = new String(Base64.encode(bytes));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Maintenant, je voudrais supprimer cette chaîne base64 et la convertir en un fichier et l'enregistrer sur l'appareil ...
est-ce que quelqu'un peut m'aider?
merci à tous =)
Vous pouvez essayer ceci:
FileOutputStream fos = new FileOutputStream(filepath);
fos.write(Base64.decode(base64String, Base64.NO_WRAP));
fos.close();
Où:
filepath:
Chemin d'accès au nouveau fichierbase64String:
Votre chaîne base64 que vous souhaitez convertir