好不容易从学校图书馆拷回了陈雄华老师的精通spring2.X随书光盘内容,打开
发现里面的Files都是大写的,顿时傻眼了,手工改回来作业量太大,这时候想起了太太口服液的广告语~~~
public static void recursion(File file){//对该目录下文件or文件夹进行处理
File[]list=file.listFiles();
for(int i=0;i<list.length;i++){
if(list[i].isFile()){//如果是文件直接变小写并复制
try{
FileInputStream fis=new FileInputStream(list[i]);
System.out.println(list[i].getPath());
byte[]b=new byte[1024]; String str=list[i].getPath().toLowerCase()
.replaceFirst("codes", "codes2")//对某些要大写的文件夹
.replaceFirst("webroot", "WebRoot")
.replaceFirst("webapp", "WebRoot")
.replaceFirst("web-inf", "WEB-INF")
.replaceFirst("meta-inf", "META-INF");
File file1=new File(str.substring(0,
str.lastIndexOf("\\")));
if(!file1.exists()){
file1.mkdirs();
}
FileOutputStream fos=new FileOutputStream(str);
int len=0;
while((len=fis.read(b))>-1){
fos.write(b, 0, len);
}
}catch(Exception e){
e.printStackTrace();
System.exit(0);
}
}
else{//如果是文件夹就递归
recursion(list[i]);
}
}
}
上面只是递归处理大写问题的一个函数,具体问题还要具体分析,有
注释帮助
理解~