由SD卡上的app创建的文件对于计算机是不可见的

时间:2014-05-19 21:04:09

标签: android file-io

当我在SD卡上的应用程序中创建文件时,它在ES Explorer等文件管理器中可见。

但是,在文件管理器中重命名文件之前,设备连接到计算机时不可见。然后它立即变得可见。这发生在Nexus 4上。 我的代码或其他一些我遇到的怪癖是否有错误?

// Mostly from http://stackoverflow.com/a/2661882/572635
public void exportDatabaseFile() {
    try {
        File sd = Environment.getExternalStorageDirectory();
        File data = Environment.getDataDirectory();

        String dbPath = "/data/my.app/databases/db.db";
        FileChannel src = new FileInputStream(new File(data, dbPath)).getChannel();
        FileChannel dest = new FileOutputStream(new File(sd, "db.db")).getChannel();
        dest.transferFrom(src, 0, src.size());
        src.close();
        dest.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

0 个答案:

没有答案