'Writting to root sdcard folder

I am trying to copy a file over to the root SD card on an Android device.

When I execute the code, it is going to the sdcard/Android/Data/<packageName>/files folder.

I have tried several different options without any success.

Also, I have checked the app to make sure it has write and read access to external memory.

private void copyfiles() {
    AssetManager assetManager = getAssets();
    String[] files = null;
    try {
        files = assetManager.list("ini");
    } catch (IOException e) {
        Log.e("tag", "Failed to get asset file list.", e);
    }
    if (files != null)
        for (String filename: files) {
            InputStream in = null;
            OutputStream out = null;
            try { in = assetManager.open("sdcard/" + filename);
                //File outFile = new File(Environment.getExternalStorageDirectory(), filename);
                File outFile = new File(getExternalFilesDir(null), filename);
                if (!(outFile.exists())) { // File does not exist...
                    out = new FileOutputStream(outFile);
                    pastefiles( in , out);
                }
            } catch (IOException e) {
                Log.e("tag", "Failed to copy asset file: " + filename, e);
            } finally {
                if ( in != null) {
                    try { in .close();
                    } catch (IOException e) {
                        // NOOP
                    }
                }
                if (out != null) {
                    try {
                        out.close();
                    } catch (IOException e) {
                        // NOOP
                    }
                }
            }
        }
}


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source