Libreria di compressione gratuita per C # che supporta 7zip (LZMA) [chiuso]
-
19-08-2019 - |
Domanda
Ho un programma (scritto in C #) che legge / scrive i suoi dati direttamente (accesso diretto ai file senza server) nei file di database di Firebird. Per uno scambio migliore, desidero (decomprimerli) sull'importazione / esportazione per uno scambio migliore su Internet senza la necessità di un programma esterno per (un) comprimerli.
Conosco #ziplib che supporta Zip, GZip, Tar e BZip2.
Quali altre librerie di compressione gratuite per C # conosci? Esiste una libreria .NET che supporta LZMA in modo che io possa leggere / scrivere " .7z " file?
Soluzione
C'è un buon articolo scritto da Peter Bromberg:
7Zip (LZMA) Compressione in memoria con C #
Mostra un semplice C #
SevenZip.Compression.Lzma.SevenZipHelper
per abilitare l'alta compressione di oggetti in memoria con C #. Aggiunge un nuovo Compressione cookie LZMA in formato 7Zip classe a quella precedentemente pubblicata Utilità CookieCompression.
Altri suggerimenti
7-zip ha un codice sorgente gratuito, SDK C # di dominio pubblico per l'algoritmo LZMA:
Puoi provare SevenZipSharp
Sembra essere un fatto abbastanza noto ma la libreria .NET include packaging / API di compressione
Se stai scrivendo singoli file, potresti semplicemente trattarlo come un flusso e usare l'integrato GZipStream
/ DeflateStream
(sebbene in alcuni test lo abbia fatto, #ZipLib ha superato l'offerta MS per rapporto e velocità). Oppure c'è il supporto zip integrato da qualche parte nel framework. Non so di LZMA, però.