Enregistrer un Bitmap pour Carte SD
J'ai une image Bitmap qui je dois l'enregistrer dans un dossier sur la Carte SD, mon code est indiqué ci-dessous. Il crée le dossier et le fichier comme prévu, mais l'image n'est pas stocké dans le fichier, il reste un fichier vide... quelqu'un Peut me dire quel est le problème?
Bitmap merged = Bitmap.createBitmap(mDragLayer.getChildAt(0).getWidth(), mDragLayer.getChildAt(0).getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(merged);
//save to folder in sd card
try {
File imagesFolder = new File(Environment.getExternalStorageDirectory(), "folder");
if(!imagesFolder.exists())
imagesFolder.mkdirs();
int imageNum;
if(imagesFolder.list()==null)
imageNum = 1;
else
imageNum = imagesFolder.list().length + 1;
String fileName = "file_" + String.valueOf(imageNum) + ".jpg";
File output = new File(imagesFolder, fileName);
while(output.exists()){
imageNum++;
fileName = "file_" + String.valueOf(imageNum) + ".jpg";
output = new File(imagesFolder, fileName);
}
OutputStream fOut = new FileOutputStream(output);
merged.compress(Bitmap.CompressFormat.JPEG, 100, fOut);
fOut.flush();
fOut.close();
Toast.makeText(getApplicationContext(), "Saved", Toast.LENGTH_SHORT).show();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
OriginalL'auteur jpmastermind | 2012-11-01
Vous devez vous connecter pour publier un commentaire.
D'abord ajouter la permission de AndroidManifest.xml
Puis écrire dans le Fichier Java comme ci-dessous.
Mis à JOUR
voir mon code mis à jour
merci, sa fonctionne maintenant 🙂
merci !!! fonctionne comme un charme 🙂
OriginalL'auteur Dhruvil Patel
vous avez juste besoin d'un bitmap
et vous devez passer un chemin pour stocker l'image
et vous devez ajouter l'autorisation dans le fichier de Manifeste..
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
OriginalL'auteur SilentKiller
Ne pas rendre difficile avec le code complexe son vraiment très simple, s'il vous plaît Essayer de code ci-dessous.
De créer un premier dir dans votre carte sd :
Alors vous devriez prendre deux chaînes de caractères Var comme ci-dessous :
Rendre Variable Du Fichier :
Espère que cela peut vous aider.
OriginalL'auteur Himanshu Dhakecha