Ich versuche, einige Dateien auf SD-Karte zu kopieren und sie dann zu löschen. Aber oft werden die Dateien nicht kopiert und nur gelöscht.Datei gelöscht, ohne kopiert zu werden
Und auch oft FileInputStream
ist null wo, wie ich überprüfe, ob die Datei, die übertragen werden muss existiert oder nicht und auch wenn es beschreibbar ist oder nicht.
Dies ist der Code, den ich eine Datei zu einem Zeitpunkt
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();
}
}
}
}
Ich übertrage viele Dateien verschieben bin mit so innerhalb einer Async Aufgabe diesen Code ich verwende.
Jede Hilfe wäre wirklich dankbar.
dieses https lesen gesetzt haben: // Stackoverflow .com/a/32652909/3682535 – rupinderjeet
@rubinderjeet Danke. Ich habe die Antwort gelesen, konnte aber keine Lösung für mein Problem finden. – Rahulrr2602