не удалось скопировать файлы базы данных Android с SD-карты - PullRequest
0 голосов
/ 29 ноября 2018

Я использую этот Java-код для восстановления базы данных комнаты Android с SD-карты, и она работает:

// Java
public static boolean copyToDirFromMultiFile(File dstDir, boolean 
              createDirsIfNotExist, File... srcFile) throws IOException {
    if (createDirsIfNotExist && !dstDir.exists()) {
        if (!dstDir.mkdirs()) return false;
    }

    for (File src : srcFile) {
        File dstFile = new File(dstDir, src.getName());
        try (InputStream inputStream = new FileInputStream(src); OutputStream outputStream = new FileOutputStream(dstFile)) {
            byte[] buffer = new byte[1024];
            int length;
            while ((length = inputStream.read(buffer)) > 0) {
                outputStream.write(buffer, 0, length);
            }
        }
    }

    return true;
}

И когда я пытался реализовать ее с помощью следующего кода Kotlin

// Kotlin
private fun copyToDirFromMultiFile(dstDir: String, originDir: String, fileName: Array<String>) {
    fileName.forEach {
        File(originDir).resolve(it).copyTo(File(dstDir).resolve(it), true)
    }
}

Файл базы данных скопирован, но мне нужно перезапустить мое приложение , пожалуйста, скажите мне, что я пропустил, Большое спасибо.

Вот документ Iнашли: copyTo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...