Frage

Ich habe eine Datenbank, die als binäre Blob gespeicherten Bilddaten enthält. Die Dokumentation sagt die Daten LZW codiert werden. Ich dachte, dass ich es mit dem Zip oder GZIP Eingangsströmen in der Java-Bibliothek gefunden entschlüsseln konnte, aber es hat nicht funktioniert - ich eine Ausnahme bekam, dass das Format der Daten, die nicht korrekt ist

.

Von dem, was ich gelesen habe, verwendet die Bibliothek DEFLATE, die nicht LZW ist. Außerdem habe ich über einige Lizenzprobleme lesen für die Verwendung des LZW-Algorithmus.

Was kann ich verwenden, um die Daten zu entschlüsseln? Gibt es eine Bibliothek? Muss ich es selbst umsetzen? Was ist mit den Lizenzproblemen?

War es hilfreich?

Lösung

Hier sind ein paar Links:

Und es gibt andere.

Tatsächlich, wenn die Bilder LZW komprimierte TIFF-Dateien, die Java Advanced Imaging API unterstützt anscheinend direkt Decodierung (wenn auch nicht kodiert es scheint).

Andere Tipps

Ich weiß, die Frage ist alt, aber ich wollte nur eine große Ressource über LZW hinzuzufügen:

http://www.matthewflickinger.com/lab/whatsinagif/lzw_image_data.asp

Es ist insbesondere über die Verwendung von LZW in GIF-Bildern, aber es erklärt die Kompression und Dekompression Algorithmen ziemlich gut.

Sie können auch versuchen, mit 7-Zip JBinding , die intern die 7zip-Bibliothek verwendet. Es ist ganz einfach zu bedienen.

Ich ging durch eine überraschende Menge von LZW-Implementierungen vor einen zu finden, die für meinen Fall gearbeitet.

UncompressedInputStream von der BioJava Projekt für mich gearbeitet, wenn ich eine .pax Datei entpacken benötigt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top