/ 获取 上传资料路径(后面简称:数据源),和上传文件的文件夹地址 (简称:仓库)
//根据仓库地址,创建file对象,并判断是否存在
//不存在进行创建仓库
//存在不需要任何处理
//根据数据源地址,创建file对象,并判断是否存在
//不存在,直接结束
//存在继续往下执行
//新路径=仓库地址+文件名称
//创建输入流(数据源的file对象),输出流(根据新路径建立的file对象)
//进行具体的上传操作
//关闭资源
package com.entity;
import org.junit.Test;
import java.io.*;
public class Main {
public static void main(String[] args) throws Exception {
upload("E:\\作业\\素材"," ");
}
@Test
public static void upload(String url1,String type) throws Exception {
File file1=new File(url1);
//判断是否存在
if(file1.exists()){
File[] files= file1.listFiles();//获取file文件数组
//如果该目录不为空
if(files!=null){
for (int i = 0; i < files.length; i++) {
File file2= files[i];
if(file2.isFile()){
if(file2.getName().endsWith(".jpg")){
System.out.println("文件:"+file2.getAbsolutePath());
String url=file2.getAbsolutePath(),path="E:\\作业\\练习";
//创建file对象,并判断是否是否存在
File file= new File(path);
if (!file.exists()){
file.mkdirs();
}
File newFile= new File(url);
if (newFile.exists()){
String filename=path+File.separator+System.currentTimeMillis()+newFile.getName().substring(newFile.getName().lastIndexOf("."),newFile.getName().length());
System.out.println(filename);
InputStream in = new FileInputStream(newFile);
OutputStream out = new FileOutputStream(filename);
//进行上传操作
byte []b= new byte[1024];
Integer n=0;
while ((n=in.read(b))!=-1) {
out.write(b,0,n);
}
in.close();
out.close();
}else{
//不存在,直接结束
return;
}
}else {
System.out.println("文件夹:"+file2.getAbsolutePath());
upload(file2.getAbsolutePath(),type);
}
}
}
}
}
}
}