<!--StartFragment -->
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;
public class ContextLoad {
public static void main(String args[]) {
//上下文加载
// ClassPathXmlApplicationContext appContext = null;
// appContext = new ClassPathXmlApplicationContext(
// new String[] {"system-architecture-research.xml"});
//
// BeanFactory factory = (BeanFactory) appContext;
// System.out.println(factory.getBean("dataSource"));
// System.out.println(factory.getBean("dataSource").getClass());
//得到系统换行符
// String rn = System.getProperty("line.separator");
// System.out.println("here is "+rn+" test!");
//properties文件路径src/test/test.properties
// InputStream in = Thread.currentThread().getClass().getResourceAsStream("/test/test.properties");
// Properties p = new Properties();
// try {
// if(in==null){
// System.out.println("load file error !");
// }else{
// p.load(in);
// System.out.println(p);
// System.out.println("############################");
// //文件所有的key值
// Enumeration enu = p.propertyNames(); //取出所有的key
// while( enu .hasMoreElements()){
// String temp = (String) enu.nextElement();
// System.out.println("key="+ temp);
// System.out.println("value="+p.getProperty(temp));
// }
// System.out.println("############################");
// }
//
// } catch (IOException e) {
// e.printStackTrace();
// }
File source = new File("D:/aaa/");
File target = new File("D:b/ccc/");
copyFile(source,target);
}
/**
* 拷贝文件到目的地址,这里目的地址是一个目录
* @param source
* @param target
* 源路径的文件(可能是不同文件层次结构的)都拷贝到了目标地址的同一个目录下
*/
public static void copyFile(File source,File target){
File targetCopy = new File(target,source.getName());
if(source.exists()){//文件或目录存在
System.out.println("copy的文件或者目录存在!!!");
if(!target.exists()){
//mkdir无法创建多级目录
target.mkdirs();//创建多级目录
}
if(source.isFile()){
InputStream in = null;
OutputStream out = null;
try {
//这里的对象必须是一个文件字符串,如果是目录,则相当于找不到file
in = new FileInputStream(source);
out = new FileOutputStream(targetCopy);
@SuppressWarnings("unused")
int readReturn;
int cacheLen = 1024;
byte cache[] = new byte[cacheLen];
//每次读取1024字节的内容到内存中,也就是1M
while((readReturn = in.read(cache)) != -1){
out.write(cache, 0,cacheLen);
out.flush();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
//对于处理流,中间可能存在一些匿名的流
//最终关闭处理流即可,被包装的流会相应的关闭
try {
if(in !=null){
//在try语句初始化in时可能存在异常
//那么in就==null,所以要进行if判断
in.close();
}
if(out !=null){
out.close();//close方法里封装了flush方法
}
} catch (IOException e) {
e.printStackTrace();
}
}
}else if(source.isDirectory()){
//如果是目录,则递归拷贝
File dirs[] = source.listFiles();
for(int i=0;i<dirs.length;i++){
copyFile(dirs[i],target);
}
}
}else{
System.out.println("copy的文件或者目录不存在!!!");
}
}
}
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class ContextLoad {
public static void main(String args[]) {
//上下文加载
// ClassPathXmlApplicationContext appContext = null;
// appContext = new ClassPathXmlApplicationContext(
// new String[] {"system-architecture-research.xml"});
//
// BeanFactory factory = (BeanFactory) appContext;
// System.out.println(factory.getBean("dataSource"));
// System.out.println(factory.getBean("dataSource").getClass());
//得到系统换行符
// String rn = System.getProperty("line.separator");
// System.out.println("here is "+rn+" test!");
//properties文件路径src/test/test.properties
// InputStream in = Thread.currentThread().getClass().getResourceAsStream("/test/test.properties");
// Properties p = new Properties();
// try {
// if(in==null){
// System.out.println("load file error !");
// }else{
// p.load(in);
// System.out.println(p);
// System.out.println("############################");
// //文件所有的key值
// Enumeration enu = p.propertyNames(); //取出所有的key
// while( enu .hasMoreElements()){
// String temp = (String) enu.nextElement();
// System.out.println("key="+ temp);
// System.out.println("value="+p.getProperty(temp));
// }
// System.out.println("############################");
// }
//
// } catch (IOException e) {
// e.printStackTrace();
// }
File source = new File("D:/aaa/");
File target = new File("D:b/ccc/");
copyFile(source,target);
}
/**
* 拷贝文件到目的地址,这里目的地址是一个目录
* @param source
* @param target
* 源路径的文件(可能是不同文件层次结构的)都拷贝到了目标地址的同一个目录下
*/
public static void copyFile(File source,File target){
File targetCopy = new File(target,source.getName());
if(source.exists()){//文件或目录存在
System.out.println("copy的文件或者目录存在!!!");
if(!target.exists()){
//mkdir无法创建多级目录
target.mkdirs();//创建多级目录
}
if(source.isFile()){
InputStream in = null;
OutputStream out = null;
try {
//这里的对象必须是一个文件字符串,如果是目录,则相当于找不到file
in = new FileInputStream(source);
out = new FileOutputStream(targetCopy);
@SuppressWarnings("unused")
int readReturn;
int cacheLen = 1024;
byte cache[] = new byte[cacheLen];
//每次读取1024字节的内容到内存中,也就是1M
while((readReturn = in.read(cache)) != -1){
out.write(cache, 0,cacheLen);
out.flush();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
//对于处理流,中间可能存在一些匿名的流
//最终关闭处理流即可,被包装的流会相应的关闭
try {
if(in !=null){
//在try语句初始化in时可能存在异常
//那么in就==null,所以要进行if判断
in.close();
}
if(out !=null){
out.close();//close方法里封装了flush方法
}
} catch (IOException e) {
e.printStackTrace();
}
}
}else if(source.isDirectory()){
//如果是目录,则递归拷贝
File dirs[] = source.listFiles();
for(int i=0;i<dirs.length;i++){
copyFile(dirs[i],target);
}
}
}else{
System.out.println("copy的文件或者目录不存在!!!");
}
}
}