public static void loadBacthFiles(File f) throws Exception{
if(f.isDirectory()){
File fileListName[]=f.listFiles();
String[] filenames=f.list();
if(null!=fileListName){
for(int i=0;i<fileListName.length;i++){
loadBacthFiles(fileListName[i]);
if(fileListName[i].isDirectory()){
logger.info(fileListName[i].getParentFile());
}
if(!fileListName[i].isDirectory()){
logger.info(fileListName[i]);
String path=""+fileListName[i];
String pathName=fileListName[i].getName();
String [] vals=pathName.substring(0, pathName.lastIndexOf(".")).split("_");
String name=vals[0].replace(" ", "");//去掉空格
String cerno=vals[1];
String appcode=vals[2];
CreditRptParser.parse(path,appcode);
}
}
http://www.cnblogs.com/yanbincn/archive/2012/07/05/2576540.html
eclipse上面跑一下 一行一行看
我很少接触Java,但是这个环节跟递归删除文件夹的结构一样;你是函数不清楚还是这个过程不清楚,,
我来简单描述下这个逻辑过程。
批文件处理过程————
先导入一个目录文件 -> 判断是不是目录文件,
是的打开把里面的东西存储到一个文件数组//listfile()<二级目录文件>;
->接着不是空//!=nullfile,进行下面的程序
遍历二级文件里面的内容,调用自身;判断二级件是不是目录文件,是的。log.info;
不是的进行目标处理;<最后一个if里面的内容了>
public static void loadBacthFiles(File f) throws Exception{
if(f.isDirectory()){
File fileListName[]=f.listFiles();
String[] filenames=f.list();
if(null!=fileListName){
for(int i=0;i<fileListName.length;i++){
loadBacthFiles(fileListName[i]);
if(fileListName[i].isDirectory()){
logger.info(fileListName[i].getParentFile());
}
if(!fileListName[i].isDirectory()){
logger.info(fileListName[i]);
String path=""+fileListName[i];
String pathName=fileListName[i].getName();
String [] vals=pathName.substring(0, pathName.lastIndexOf(".")).split("_");
String name=vals[0].replace(" ", "");//去掉空格
String cerno=vals[1];
String appcode=vals[2];
CreditRptParser.parse(path,appcode);
}
}
}
}
}
public static void loadBacthFiles(File f) throws Exception{
if(f.isDirectory()){//如果file 是一个目录
File fileListName[]=f.listFiles();//取到此目录下的所有子文件
String[] filenames=f.list();//取到此目录下的所有子文件名字
if(null!=fileListName){//如果子文件组不为空
for(int i=0;i<fileListName.length;i++){//遍历子文件
loadBacthFiles(fileListName[i]);
if(fileListName[i].isDirectory()){//判断第i个子文件是否是目录
logger.info(fileListName[i].getParentFile());
}
if(!fileListName[i].isDirectory()){//如果子文件不是目录
logger.info(fileListName[i]);
String path=""+fileListName[i];//取出文件路径
String pathName=fileListName[i].getName();//取出文件名
String [] vals=pathName.substring(0, pathName.lastIndexOf(".")).split("_");
String name=vals[0].replace(" ", "");//去掉空格
String cerno=vals[1];
String appcode=vals[2];
CreditRptParser.parse(path,appcode);
}
}