Existe-t-il un moyen pratique de compresser NSData?
Je n'ai pas vu toute la documentation sur le sujet, mais cela ne signifie pas qu'il n'existe pas.
source d'informationauteur eric.mitchell
Vous devez vous connecter pour publier un commentaire.
Je n'ai pas vu toute la documentation sur le sujet, mais cela ne signifie pas qu'il n'existe pas.
source d'informationauteur eric.mitchell
Vous devez vous connecter pour publier un commentaire.
Oui, compresser les données avec zlib.
@Brad Larson posté sur ce: voir ici et ajouté le code.
Il y a un CocoaPod qui utilise Objectif-Zip par flyingdolphinstudio.
Suivant @Zaph & @Brad Larson postes, ci-dessous sont les 2 méthodes
gzipInflate
etgzipDeflate
qui fonctionnent très bien pour compresser/décompresserNSData
. (code reformaté de cocoadev.com/wiki/NSDataCategoryÀ partir du journal:
À partir de l'iOS 9.0, il y a un support intégré pour un peu plus d'algorithmes de compression. La bibliothèque est appelée libcompression et prend en charge LZ4, LZMA, ZLIB et LZFSE.
Voici un rapide exemple de l'utilisation de libcompression pour décompresser LZMA. C'est verbeux, mais évite de dépendances externes et pourrait être caché dans une extension sur
NSData
.J'ai fait une belle Objective-C compression BZip2 interface disponible en CocoaPod: https://github.com/blakewatters/BZipCompression
Essayez ceci: https://github.com/mattt/GodzippaIl a été utile pour moi.
Swift 3 prêt wrapper autour de libcompression.
https://github.com/mw99/SwiftDataCompression
Intéressant de jouer avec dans la cour de récréation:
aire de jeux des taux de compression