3

我想在外部 SD 卡上保存一个文件。我已经实现了一个在外部 sdcard 上保存文件的应用程序。但是我的 Android MotorolaARTIX2 设备包含内部 sdcard。当我试图将文件保存在外部 sdcard 上时,它总是保存到内部 sdcard我的设备。

我已按如下方式实现了我的应用程序:

     try {
        File root = Environment.getExternalStorageDirectory();
        if (root.canWrite()){
            File file = new File(root, "myfile.txt");
            FileWriter gpxwriter = new FileWriter(file);
            BufferedWriter out = new BufferedWriter(gpxwriter);
            out.write("Hello world");
            out.close();
        }
    } catch (IOException e) {
        Log.e("Exception", "Could not write file " + e.getMessage());
    }

从上面的代码中,我的应用程序总是将 myfile.txt 文件保存在内部 sdcard 而不是外部 sdcard-ext 上。我的应用程序支持所有具有相同代码的设备。

如何将 myfile.txt 保存在设备的 sdcard-ext(外部)而不是 sdcard(内部)上?

请任何人帮助我....

4

2 回答 2

1

看看这个问题的答案,尤其是男爵的答案

于 2012-07-06T13:23:43.943 回答
1

摩托罗拉为此提供了一个 API。看这里: http: //developer.motorola.com/docs/motorola-external-storage-api/但这不是一个好的通用解决方案。您可能需要扫描文件系统以找到适用于所有设备的更通用的解决方案。

于 2012-07-06T13:27:50.413 回答