IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

zlib / stream / niveau compression


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 71
    Points : 57
    Points
    57
    Par défaut zlib / stream / niveau compression
    Bonjour,

    J'ai un stream zlib que je decompresse. Pas de problème.
    Je voudrais lire avant de la décompresser le niveau de comrpession.
    J'ai la description du flag (de l'octect) pour extraire le niveau mais je n'ai pas trouvé l'info m'indiquant la position de l'octet dans le stream.

    Si quelqu'un a l'info ou même un exemple dans un autre language.

    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2008
    Messages : 231
    Points : 359
    Points
    359
    Par défaut
    Avant chaque compression il y a une entête qui contient toutes les informations. Il suffit de lire cette entête, pour le faire tu as plusieurs solution, la première et la version la plus logique ... lire la documentation
    si tu ne trouves rien dans la documentation alors il te reste à voir dans l'API peut être qu'il y a uns propriété, une méthode qui va te fournir l'information ....
    Sachant que la première solution peut t'amener à la seconde
    La troisième est bien c'est d'utiliser un logiciel de décompilation de la dll qui traite l'information et de regarder l'aglo et surtout de le comprendre lol
    "Une belle citation est un diamant au doigt de l'homme d'esprit et un caillou dans la main d'un sot."
    Joseph Roux

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 71
    Points : 57
    Points
    57
    Par défaut
    Mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
            private static CompressLevel RetrieveCompressionLevel(BinaryReader br)
            {
                int cmf = br.ReadBytes(1)[0];
                int flg = br.ReadBytes(1)[0];
                CompressLevel flevel;
     
                flg = (flg & 0xC0); // Mask : 11000000 = 192 = 0xC0
                flg = flg >> 6;
     
                switch (flg)
                {
                    case 0:
                        flevel = CompressLevel.None;
                        break;
                    case 1:
                        flevel = CompressLevel.Fastest;
                        break;
                    case 2:
                        flevel = CompressLevel.Default;
                        break;
                    case 3:
                        flevel = CompressLevel.Best;
                        break;
                    default:
                        flevel = CompressLevel.Best;
                        break;
                }
     
                return flevel;
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Compression d'un Stream.
    Par Bruno13 dans le forum Delphi
    Réponses: 1
    Dernier message: 06/09/2006, 19h08
  2. [zLib] Compresser/Décompresser des données
    Par alex6891 dans le forum Réseau
    Réponses: 10
    Dernier message: 25/03/2006, 11h35
  3. Réponses: 2
    Dernier message: 13/01/2006, 10h11
  4. Réponses: 4
    Dernier message: 03/08/2005, 09h47
  5. Comment compresser un stream ?
    Par lafaryan dans le forum Composants VCL
    Réponses: 2
    Dernier message: 09/01/2005, 20h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo