从.XML文件中读取信息

时间:2013-07-01 08:04:14

标签: java algorithm file jaxb

想象一下,我的.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文件,但我想读取具有特定模式的目录。

1 个答案:

答案 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 */
  } 
}