Java - Как извлечь информацию из многих файлов XML в каталоге и экспортировать ее в файл Excel - PullRequest
0 голосов
/ 04 января 2019

Я пытаюсь получить информацию из многих XML-файлов в каталоге.

Как получить конкретную информацию из каждого из них и отправить ее в файл Excel в яве?

file 1.xml
file 2.xml
file 3.xml

*********

**file.csv** or .**xls** with the information of the 'n' files XML

1 Ответ

0 голосов
/ 04 января 2019

Есть несколько библиотек на Java, которые могут помочь вам в этом.

Например, для получения информации из XML вы можете использовать dom4j и извлекать конкретную информацию, используяязык запросов XPATH, поддерживаемый библиотекой ( примеры ).И чтобы прочитать все XML-файлы из каталога, Java 8 имеет простой способ добиться этого:

Files.list(Paths.get("/path/to/xml/files"))
        .map(YourXMLParser::parse)
        .forEach(XLSExporter::export);

, где у метода разбора будет подпись:

public MyDataBean parse(Path path) {
    InputStream inputStream = Files.newInputStream(Path);
    SAXBuilder saxBuilder = new SAXBuilder(inputStream);
    ... <-- Making use of SAX for instance and return the read data in a custom Bean (MyDataBean)
}

As Files.list () метод return Stream вы можете воспользоваться этим, чтобы использовать map и forEach .

Как только выесть информация из каждого XML-файла, которую вы можете экспортировать в XLS, используя для этого наиболее используемую библиотеку в Java: Apache POI

Надеюсь, это поможет.

...