如何将目录(文件夹)复制到USB存储

时间:2016-03-23 08:45:33

标签: android android-file android-fileprovider

我正在尝试将整个目录复制到USB存储:

http://justawebsite.com

下面的代码是将整个文件夹复制到USB存储。

  File Sdfile = new File(Environment.getExternalStorageDirectory(), "myfolder");

                Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);

                intent.setType("*/*");
                 intent.setType(DocumentsContract.Document.MIME_TYPE_DIR);//For API 19+
                 intent.putExtra(Intent.EXTRA_TITLE, Sdfile.getName());
                intent.putExtra("android.content.extra.SHOW_ADVANCED", true);
                startActivityForResult(intent, 47);


  @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {


        if (requestCode == 47) {
            if (resultCode != RESULT_OK) return;
            File file = new File(Environment.getExternalStorageDirectory(), "myfolder");
             copyFile(file, data.getData());

        }

当我尝试复制整个文件夹时,它会出错。

即使我直接将整个文件夹复制到USB存储设备。

如何复制整个目录?

1 个答案:

答案 0 :(得分:0)

我猜你的应用没有正确的权限。对于KitKat以下的Android版本,您需要在AndroidManifest.xml

中声明权限WRITE_EXTERNAL_STORAGE

<user-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

参考:http://developer.android.com/reference/android/Manifest.permission.html#WRITE_EXTERNAL_STORAGE