Stream dekomprimieren Sie die Datei zum transparenten Einlesen in Windows

1

Ich habe eine Sammlung komprimierter, sehr großer CSV-Dateien, aus denen ich einige kleine Teile des Inhalts extrahieren muss. Konzentrieren wir uns nicht auf mögliche praktische Lösungen, sondern auf die folgenden theoretisch Frage:

Gibt es eine Möglichkeit, den Inhalt einer komprimierten Datei in Windows transparent zu lesen? Das Ziel ist, eine ZIP-Datei (oder ein anderes Format) wie eine CSV-Datei aus einem Programm zu lesen, das nur mit CSV-Dateien umgehen kann.

In Linux können Sie ein Bash-Skript erstellen, das eine Dekomprimierung auslöst und beim Lesen an eine Named Pipe sendet. Unter Windows denke ich, dass Sie eine mit Betriebssystem-APIs erstellen können, aber ich würde gerne wissen, ob es einen einfacheren Weg gibt. Ich weiß auch nicht, wie Sie es von einem anderen Programm lesen, das nur lesen kann, wie Dateien gelesen werden.

Vielen Dank!

s_a
quelle
1
Dies wurde in StackOverflow nachgefragt stackoverflow.com/questions/37561465/…
AtomicFireball
@AtomicFireball Danke! Aber wie verwende ich diesen PowerShell-Code zum Lesen der CSV-Datei eines Programms, das nur wissen kann, wie CSV-Dateien gelesen werden sollen?
s_a
Die Antwort zeigt, wie eine einzelne Datei extrahiert wird. Sie könnten das in einem temporären Verzeichnis tun und verwenden Import-CSV um die Datei in PowerShell zu lesen. Sie können auch die Eigenschaft [System.IO.Compression] verwenden, um eine Liste der Namen abzurufen und nach CSV-Dateien zu suchen, bevor Sie sie extrahieren. Expand-Archive ist auch in PowerShell 5 verfügbar.
AtomicFireball