2008-12-09 24 views
0

Я создаю класс java, который будет искать каталог для файлов XML. Если некоторые из них присутствуют, он будет использовать JDOM для их анализа и создания упрощенного вывода, описанного XSLT. Затем это будет выводиться в другой каталог, сохраняя имя исходного XML (т. Е. Входной XML является «sample.xml», вывод XML также «sample.xml».Parse multiple xml files, JDOM

В настоящий момент я могу читать в указанной XML и отправить результат в указанный XML, однако в будущем это не будет иметь большого смысла/пользы.

ответ

2

Передайте аргумент каталога вашей программе вместо аргумента файла. Затем проверьте, что переданный аргумент - это действительно каталог, список всех файлов и обработка каждого файла. Например:

import java.io.File; 
import java.io.FilenameFilter; 

public class FileDemo { 
    public static void main(String[] args) throws Exception { 
     if (args.length != 1) { 
      // print usage error 
      System.exit(1); 
     } 

     File dir = new File(args[0]); 
     if (!dir.isDirectory()) { 
      // print usage error 
      System.exit(1); 
     } 

     File[] files = dir.listFiles(new FilenameFilter() { 
      public boolean accept(File dir, String name) { 
       return name.toLowerCase().endsWith(".xml"); 
      } 
     }); 

     for (File file : files) { 
      // process file 
      System.out.println("File: " + file.getAbsolutePath()); 
     } 
    } 
} 
+0

Идеальное решение, спасибо за это Джейсон! – damien535 2008-12-10 09:43:30