ZIP-Datei in Java effizient lesen

Ich arbeite an einem Projekt, das mit einer sehr großen Datenmenge arbeitet. Ich habe eine Menge (Tausende) Zip-Dateien, von denen jede EINE einfache TXT-Datei mit Tausenden von Zeilen (etwa 80.000 Zeilen) enthält. Was ich gerade mache, ist folgendes:

for(File zipFile: dir.listFiles()){
ZipFile zf = new ZipFile(zipFile);
ZipEntry ze = (ZipEntry) zf.entries().nextElement();
BufferedReader in = new BufferedReader(new InputStreamReader(zf.getInputStream(ze)));
...

Auf diese Weise kann ich die Datei zeilenweise lesen, aber sie ist definitiv zu langsam. Angesichts der großen Anzahl von Dateien und Zeilen, die gelesen werden müssen, muss ich sie effizienter lesen.

Ich habe nach einem anderen Ansatz gesucht, aber nichts gefunden. Ich denke, ich sollte die Java-NIO-APIs verwenden, die für intensive E / A-Vorgänge vorgesehen sind, aber ich weiß nicht, wie ich sie mit ZIP-Dateien verwenden soll.

Jede Hilfe wäre wirklich dankbar.

Vielen Dank,

Marco

Antworten auf die Frage(5)

Ihre Antwort auf die Frage