想象一下,我的.xml文件格式如下。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<config>
<Directory>c:/test</Directory>
<headerLine>1</headerLine>
<pattern>.*\.txt</pattern>
</config>
<Directory>
标记,指定文件的路径。
<headerLine>
代码,指定我的文件有多少行有标题,另一行是正文。(不重要)
<pattern>
代码。指定文件的格式。
问题是:
我想读一个文件。首先,我必须转到<Directory>
标签,并获取我的文件目录,然后我必须使用指定模式读取该目录中的所有文件,该模式显示在标签中。
例如.in C:/ test,我有很多文件,但我应该读取以“。*。txt”结尾的文件。
我使用“Unmarshal”算法从.xml中读取并将其转换为java对象。
我的问题是,我怎么能定义用该模式读取c:/ test目录中的所有文件。
你能帮帮我吗,我怎么能解决这个问题?
FileSplitter fileSplitter = new FileSplitter("C:\\test.txt");
使用此代码,我只能读取test.txt
文件,但我想读取具有特定模式的目录。
答案 0 :(得分:0)
是的,那是对的。 正如“Vignesh Vino”建议的那样,这段代码解决了我的问题并回答了我的问题
File folder = new File("/path/to/files");
File[] listOfFiles = folder.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
File file = listOfFiles[i];
if (file.isFile() && file.getName().endsWith(".txt")) {
String content = FileUtils.readFileToString(file);
/* do somthing with content */
}
}