Java 从.XML文件读取信息

Java 从.XML文件读取信息,java,algorithm,file,jaxb,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> 使用此代码,我

假设我有以下格式的.xml文件

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<config>
    <Directory>c:/test</Directory>
    <headerLine>1</headerLine>
    <pattern>.*\.txt</pattern>
</config>
使用此代码,我可以只读取
test.txt
文件,但我想读取具有特定模式的目录。

是的,没错。 正如“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 */
  } 
}
File folder=新文件(“/path/to/files”);
File[]listOfFiles=folder.listFiles();
for(int i=0;i
有很多方法可以读取XML。使用DOM、SAX等。有关如何读取XML或如何使用regex读取文件的详细信息,请尝试从目录中读取文件。我的问题是如何使用“regex”读取文件。您可以按照@VigneshVino的建议使用FilenameFilter。没有什么能阻止您在
accept()
方法中使用正则表达式。
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 */
  } 
}