Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 5.1.1无法以编程方式在外部SD卡内创建文件夹?_Android - Fatal编程技术网

Android 5.1.1无法以编程方式在外部SD卡内创建文件夹?

Android 5.1.1无法以编程方式在外部SD卡内创建文件夹?,android,Android,我试图创建一个应用程序,将媒体文件夹从手机内存复制到三星j5的外部SD卡上。我能够从内存复制到内存本身。但无法复制到外部SD卡 static String Source_Location=Environment.getExternalStorageDirectory().toString()+"/WhatsApp/Media/WallPaper"; static String Target_Location= System.getenv("SECONDARY_STORAGE");// "/mnt

我试图创建一个应用程序,将媒体文件夹从手机内存复制到三星j5的外部SD卡上。我能够从内存复制到内存本身。但无法复制到外部SD卡

static String Source_Location=Environment.getExternalStorageDirectory().toString()+"/WhatsApp/Media/WallPaper";
static String Target_Location= System.getenv("SECONDARY_STORAGE");// "/mnt/extSdCard/";

TextView strDisplaypath;
    FileInputStream in;
    FileOutputStream out;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        strDisplaypath= (TextView) findViewById(R.id.lbldiaply);
    File SrcPath=new File(Source_Location);
        File DestPath=new File(Target_Location);
    try { 
            copyDirectory(SrcPath, DestPath);
           } 
    catch (IOException e) { 
            e.printStackTrace();
        }
    }

    public void copyDirectory(File sourceLocation , File targetLocation)
            throws IOException {

        if (sourceLocation.isDirectory()) {
            if (!targetLocation.exists()) {
                targetLocation.mkdir();
            }

            String[] children = sourceLocation.list();
            for (int i=0; i<children.length; i++) {
                copyDirectory(new File(sourceLocation, children[i]),
                        new File(targetLocation, children[i]));
            }
        } else {

            InputStream in = new FileInputStream(sourceLocation);
            OutputStream out = new FileOutputStream(targetLocation);

            // Copy the bits from instream to outstream
            byte[] buf = new byte[1024];
            int len;
            while ((len = in.read(buf)) > 0) {
                out.write(buf, 0, len);
            }
            in.close();
            out.close();
        }
        Toast.makeText(getApplicationContext(),"Files Copied",Toast.LENGTH_LONG).show();
    }
static String Source\u Location=Environment.getExternalStorageDirectory().toString()+“/WhatsApp/Media/WallPaper”;
静态字符串Target_Location=System.getenv(“辅助_存储”);//“/mnt/extSdCard/”;
TextView标准显示路径;
文件输入流输入;
文件输出流输出;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
strDisplaypath=(TextView)findViewById(R.id.lbldiaply);
文件SrcPath=新文件(源位置);
文件DestPath=新文件(目标位置);
试试{
copyDirectory(SrcPath,DestPath);
} 
捕获(IOE){
e、 printStackTrace();
}
}
public void copyDirectory(文件源位置、文件目标位置)
抛出IOException{
if(sourceLocation.isDirectory()){
如果(!targetLocation.exists()){
targetLocation.mkdir();
}
String[]children=sourceLocation.list();
对于(int i=0;i 0){
out.write(buf,0,len);
}
in.close();
out.close();
}
Toast.makeText(getApplicationContext(),“文件已复制”,Toast.LENGTH_LONG.show();
}

您的代码是什么?您的错误是什么?您需要为在外部存储器上写入指定最严格的权限(内部存储器还有另一个权限)你知道吗?获取文件不存在之类的错误我给出了我尝试将单个文件从内部复制到SD卡,但它没有抛出任何错误,但我在外部SD卡上看不到复制的文件。。