从SD卡复制Android会议室数据库文件失败

时间:2018-11-29 06:13:59

标签: java android kotlin

我正在使用此 Java代码从SD卡还原android会议室数据库,并且有效:

// 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)
    }
}

数据库文件已复制,但是我必须重新启动我的应用程序,请告诉我我错过的事情,非常感谢。

这是我找到的文档: copyTo

0 个答案:

没有答案