import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
public class MyTest {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
List<Bean> list =new ArrayList<Bean>();
Bean be =new Bean();
be.setKey("F:/data/dir/file");
be.setValue("F:/tttt.rar");
list.add(be);
be =new Bean();
be.setKey("F:/data/dir/newfile");
be.setValue("F:/jrfee.rar");
list.add(be);
for(Bean bean:list)
{
sysCreateDir(bean.getKey());
String b=bean.getValue().substring(bean.getValue().lastIndexOf("/"));
System.out.println(b);
copyFile(bean.getKey()+b,bean.getValue());
}
//sysCreateDir("f:/data/dir/file");
}
private static void copyFile(String key, String value) throws IOException {
InputStream in = new FileInputStream(new File(value));
OutputStream out = new FileOutputStream(new File(key));
byte[] buf = new byte[1000];
while(true){
int k = in.read(buf); // k 实际读到了多少?
if(k==-1) break;
out.write(buf,0,k); // 从0开始,写k个
if(k<buf.length) break;
}
}
private static void sysCreateDir(String string) {
File file =new File(string);
if(file.exists()){
return;
}
String[] sr=string.split("/");
String dd=sr[0];
StringBuffer sb =new StringBuffer();
sb.append(dd);
for(int i=1;i<sr.length;i++)
{
String r=sr[i];
sb.append('/').append(r);
createFile(sb.toString());
}
}
private static void createFile(String string) {
File file =new File(string);
if(!file.isDirectory())
{
file.mkdir();
}
}
}