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

Qt Discussion :

stocker plusieurs fichiers en un seul


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut stocker plusieurs fichiers en un seul
    Bonjours à tous,
    j'ai besoin de réaliser un truc en QT qui consiste à stocker plusieurs fichiers et répertoires en un seul,la tache est similaire à l'archivage sans compression!
    j'ai pensé d'une solution qui consiste à sérialiser QFile et QDir...mais je ne sais pas si c'est une solution paratique...
    j'ajoute que je ne veut pas utiliser des bibliothèques externes,donc QT pur!
    quelqu'un peut m'aider SVP...avec un peu de code
    Merci!

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    C'est une bonne idée de "sérialiser" tous tes fichiers. Par contre, la première chose à faire est de créer "une table" contenant tous tes dossiers/sous dossiers, les noms de fichiers et leurs tailles respectives (peut être même aussi les permissions, ou d'autres choses (fichiers cachés, format du disque dur sur lesquels ils sont enregistrés, etc)) En gros tu devras enregistrer des QFileInfo, même si je pense que ce ne sera pas suffisant.

    Après, il y a la classe QDataStream pour écrire ton fichier, et qui est assez pratique.

    Si tu veux faire un truc vraiment costaud, je pense qu'il y a un peu de travail. Sinon, si ce n'est pas multi plateforme, tu devrais t'en sortir assez facilement. Il y a deja dans la FAQ des parsers de dossiers.

    G.

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    Merci de ta réponse,c'est très suffisante!
    à ce qui concerne la table des fichiers,c'est très proche de ce que j'ai pensai:
    je vais enregistrer dans l'entête de mon pseudo-archive les informations relatives aux fichiers comme:le nombre de fichiers,leurs taille,noms de répertoires,sous-répertoires,etc...puis enregistrer tous les fichiers voulus...
    et quand je veut lire un fichier spécifique,je dois exploiter les informations du table des fichiers qui sont enregistrés à l'entête de notre pseudo-archive...donc pour effectuer tous ça,on doit utiliser QDataStream, et QVariant pour la sérialisation...c'est pas difficile!
    Merci pour ton coup de main utile!

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

Discussions similaires

  1. stocker plusieurs resultats dans un seul fichier
    Par karaudrey88 dans le forum Langage
    Réponses: 1
    Dernier message: 16/04/2012, 14h58
  2. stocker/archiver plusieurs fichiers dans un seul fichier
    Par tatoo59 dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 03/06/2007, 18h57
  3. exporter cellules de plusieurs fichiers sur un seul fichier
    Par sapeur37 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/11/2006, 09h46
  4. Regrouper plusieurs fichiers en un seul
    Par kurkaine dans le forum C++Builder
    Réponses: 6
    Dernier message: 29/09/2006, 20h14
  5. [XML][Java] parser plusieurs fichiers en un seul arbre DOM ?
    Par mrlenul dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 29/11/2005, 11h09

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