// 创建用户文件夹 用来存放文件 File file = new File(files.getPath() + "/"+ xueJiYiDong.getXh()+"-"+ System.currentTimeMillis()); file.mkdirs(); for (String url : list) { // 获取服务端文件路径 if (url.contains("http://")) { String newFile = this.uploadPath + "/"+url.substring(url.indexOf("api/")+4); File file1 = new File(newFile);// copyFile(file1,file.getPath()); } }
把source文件复制到dest文件夹下
public static void copyFile(File source,String dest )throws IOException{ //创建目的地文件夹 File destfile = new File(dest); if(!destfile.exists()){ destfile.mkdir(); } //如果source是文件夹,则在目的地址中创建新的文件夹 if(source.isDirectory()){ File file = new File(dest+"\\"+source.getName());//用目的地址加上source的文件夹名称,创建新的文件夹 file.mkdir(); //得到source文件夹的所有文件及目录 File[] files = source.listFiles(); if(files.length==0){ return; }else{ for(int i = 0 ;i<files.length;i++){ copyFile(files[i],file.getPath()); } } } //source是文件,则用字节输入输出流复制文件 else if(source.isFile()){ FileInputStream fis = new FileInputStream(source); //创建新的文件,保存复制内容,文件名称与源文件名称一致 File dfile = new File(dest+"\\"+source.getName()); if(!dfile.exists()){ dfile.createNewFile(); } FileOutputStream fos = new FileOutputStream(dfile); // 读写数据 // 定义数组 byte[] b = new byte[1024]; // 定义长度 int len; // 循环读取 while ((len = fis.read(b))!=-1) { // 写出数据 fos.write(b, 0 , len); } //关闭资源 fos.close(); fis.close(); } }