java根据文件路径读取文件_java通过文件路径读取该路径下的所有文件并将其放入list中...
需求:所有xml文件都放在某个目录下,写个方法读取所有xml文件,然后传给下面的某个方法调用实现:先把所有的xml文件通过递归读取出来 ,存放到List中,然后以文件名为Key,文件(文件路径+文件名)为Value,存放到Map中,供后面程序调用代码如下:importjava.io.File;importjava.util.ArrayList;importjava.util.HashMap;imp
需求:所有xml文件都放在某个目录下,写个方法读取所有xml文件,然后传给下面的某个方法调用
实现:先把所有的xml文件通过递归读取出来 ,存放到List中,然后以文件名为Key,文件(文件路径+文件名)为Value,存放到Map中,供后面程序调用
代码如下:
importjava.io.File;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;public classListXmlFiles {/*** 获取所有XML文件
*@parampath 文件路径
*@paramfileList 存放所有XML文件的列表*/
public void getXmlFiles(String path, ListfileList) {
File file= newFile(path);
File[] files=file.listFiles();for(File fileIndex : files) {if (!fileIndex.exists()) {throw new NullPointerException("Cannot find " +fileIndex);
}else if(fileIndex.isFile()) {
fileList.add(fileIndex);
}else{if(fileIndex.isDirectory()) {
getXmlFiles(fileIndex.getAbsolutePath(), fileList);
}
}
}
}public static voidmain(String[] args) {//声明一个HashMap,用于存放XML文件,格式:,以文件名为KEY,可以得到整个文件所在的路径和文件名
Map xmlMap = new HashMap<>();
ListXmlFiles lxf= newListXmlFiles();//存放xml文件的根目录
String filePath = System.getProperty("user.dir") + "\\element";//声明一个List,用于存放所有得到的XML文件
List fileList = new ArrayList<>();
lxf.getXmlFiles(filePath, fileList);for(File f : fileList) {
System.out.println(f);//把每个文件存放到HashMap中
xmlMap.put(f.getName(),f.getAbsolutePath());
}
System.out.println(xmlMap);
}
}
执行结果:
D:\UIAutoTest\UIdemo\element\a\a1.xml
D:\UIAutoTest\UIdemo\element\a\a2.xml
D:\UIAutoTest\UIdemo\element\b\b1.xml
D:\UIAutoTest\UIdemo\element\b\bb\b2.xml
D:\UIAutoTest\UIdemo\element\b\bb\bbb\b3.xml
D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\b4.xml
D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\b5.xml
D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\bbbbb\LoginPage.xml
D:\UIAutoTest\UIdemo\element\c.xml
{b5.xml=D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\b5.xml,
b4.xml=D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\b4.xml,
c.xml=D:\UIAutoTest\UIdemo\element\c.xml,
a1.xml=D:\UIAutoTest\UIdemo\element\a\a1.xml,
a2.xml=D:\UIAutoTest\UIdemo\element\a\a2.xml,
b3.xml=D:\UIAutoTest\UIdemo\element\b\bb\bbb\b3.xml,
LoginPage.xml=D:\UIAutoTest\UIdemo\element\b\bb\bbb\bbbb\bbbbb\LoginPage.xml,
b2.xml=D:\UIAutoTest\UIdemo\element\b\bb\b2.xml,
b1.xml=D:\UIAutoTest\UIdemo\element\b\b1.xml}
Process finished with exit code 0
更多推荐
所有评论(0)