J'essaie de copier des fichiers sur la carte SD, puis de les supprimer. Mais plusieurs fois les fichiers ne sont pas copiés et ne sont supprimés.Fichier supprimé sans être copié
Et aussi de nombreuses fois le FileInputStream
est nulle où que je vérifie si le fichier qui doit être transféré existe ou non et aussi s'il est inscriptible ou non.
Ce code j'utilise pour déplacer un fichier
public static void move(final File remove,final DocumentFile move_to_folder) {
final String mime = MimeTypes.getMimeType(remove);
final DocumentFile move = move_to_folder.createFile(mime, remove.getName());
try {
inStream = new FileInputStream(remove);
outStream =
con.getApplicationContext().getContentResolver().openOutputStream(move.getUri());
final byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inStream.read(buffer)) != -1) {
outStream.write(buffer, 0, bytesRead);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if(inStream!=null)
{
inStream.close();
}
if(outStream!=null)
{
outStream.close();
}
delete(remove);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Je transfère plusieurs fichiers à la fois, donc je suis en utilisant ce code à l'intérieur d'une Async tâche.
Toute aide serait vraiment reconnaissante.
lire ce https: // stackoverflow .com/a/32652909/3682535 – rupinderjeet
@rupinderjeet Merci. J'ai lu la réponse mais je n'ai pas trouvé la solution à mon problème. – Rahulrr2602