ファイルをSDカードにコピーしてから削除しようとしています。しかし、何度もファイルがコピーされず、削除されるだけです。コピーされずにファイルが削除される
また、何度もFileInputStream
がnullの場合、転送するファイルが存在するかどうか、書き込み可能かどうかを確認しています。
これは私が非同期タスク内でこのコードを使用していますので、私は一度に多くのファイルを転送していたファイル
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();
}
}
}
}
を移動するために使用していますコードです。
本当にありがとうございました。
をチェックしている場合は、tryブロックが
を追加する前に:// stackoverflowの.com/a/32652909/3682535 – rupinderjeet
@rupinderjeetありがとうございました。私は答えを読んだが、私の問題の解決策を見つけることができなかった。 – Rahulrr2602