Я работаю над проектом, в котором мне нужно извлечь данные из xml (sitemap) из gz-файла, используя apache tika [AM NEW TO TIKA]. имя fie что-то вроде sitemap01.xml.gz Я мог извлечь данные из обычного текстового файла или html, но я не знаю, как извлечь xml из gz и извлечь мета и данные из xml ... Я искал Google за последние два дня.Извлечь XML-данные из файла gzip с помощью apache tika?
Нужно ли использовать делегат-парсер в tika для извлечения данных из xml? Просьба направить меня в какой-то образец или статьи ....
Вот моя попытка
public void parseXml() throws IOException{
Metadata metadata = new Metadata();
ContentHandler handler = new BodyContentHandler();
Parser parser = new AutoDetectParser();
ParseContext context = new ParseContext();
InputStream stream =this.getClass().getResourceAsStream("sitemap.xml.gz");
try {
parser.parse(stream,handler,metadata,context);
for(int i = 0; i <metadata.names().length; i++) {
String name = metadata.names()[i];
System.out.println(name + " : " + metadata.get(name));
}
System.out.println(handler.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TikaException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(stream!=null) {
stream.close();
}
}
}