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

Langage Delphi Discussion :

Stocker un record dans un fichier


Sujet :

Langage Delphi

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 15
    Points : 13
    Points
    13
    Par défaut Stocker un record dans un fichier
    Bonjour à tous,

    Je recherche en vain à écrire dans un fichier text (ou autre, vu que c'est moi qui créais le fichier), une variable de type record avec le type suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    type MonType = record
      Couleur1 : TColor;
      Couleur2 : TColor;
    end;
    Si quelqu'un a une idée, je le remercie d'avance !

  2. #2
    HT
    HT est déconnecté
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    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
     
     
    type MonType = record
            Couleur1 : TColor;
            couleur2  : TColor;
            end;
     
    type MonFichier = file of MonType;
     
     
    Var type : MonType;
          fichier : MonFichier;
     
     
    [code]
    Il ne te reste plus qu'à décider d'un nom de fichier, l'assigner à la variable "fichier", puis à écrire toutes les procédures d'E/S , d'ouverture et de fermeture de fichier. C'est un peu fastidieux mais pas difficile.
    Bonne chance

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Jusque là ça va, mais pour les fonctions à utiliser pour écrire dans le fichier, car toutes les fonctions d'écriture de fichier utilisent des String ou des TComponent (avec TFileStream)

    Pas moyen de pouvoir mettre en paramètre un type record !

  4. #4
    HT
    HT est déconnecté
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Exemple du code que j'utilise pour travailler sur un fichier avec des variables structurées.

    Je crée tout ça dans une unité indépendante, par ex. FICHIERS.pas
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
     
    interface
     
    const
    NomFichier:=shorstring='Valeurs.dat';
     
    type
    TCouleur = record
            chpCouleur1,
            chpCouleur2:TColor;
    end;
     
    TFichierCouleur = file of TCouleur;
     
    var
         fiche:TCouleur;
         UnFichier:TFichierCouleur;
     
    // ici je déclare toutes les procédures et fonctions que j'utiliserai dans
    //le programme
     
              IMPLEMENTATION
     
    procedure LireCouleur(enr:cardinal;var UnEnreg:TCouleur);
    begin
           seek(UnFichier,enr);
           read(UnFichier,UnEnreg);
    end;
     
    procedure EcrireCouleur(enr:cardinal;UnEnreg:TCouleur);
    begin
           seek(UnFichier,enr);
           write(UnFichier,UnEnreg);
    end;
     
    procedure CreerFichier;
    begin
           rewrite(UnFichier);
    end;
     
    procedure OuvrirFichier;
    var err:integer;
    begin
           {$I-} reset(UnFichier) {$I+}
           err:=IOResult; // je sais mal me servir de la gestion des exceptions
           case err of
                        0:exit; // le fichier est ouvert sans problème
                        2:CreerFichier; // s'il n'existe pas, il est créé
           end;
    end;
     
    procedure FermerFichier;
    begin
           closeFile(UnFichier)
    end;
     
    procedure Assignation;
    begin
           assignFile(UnFichier,NomFichier)
    end;
     
            initialisation
    Assignation
     
    end.
    C'est clair ?
    A ta dispo pour plus de détails.
    Je travaille toujours sur des bases de données que je crée et gère moi-même, car je ne sais pas le faire avec les composants BD. Vieille habitude de Pascal. Ca marche bien, même si c'est pas très élégant comme programmation.

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Je te remercie HT, ça MARCHE !!!!!

    Ton m'a vraiment oter une énorme épine du pied !!


    Dons l'aide de Delphi j'avai bien vu les fonctions "seek", "write" et "read", mais l'exemple du "read" était fait avec un TFile.

    Nykkel !!!

    Si je peux t'aider pour la BD, no problem !!

  6. #6
    HT
    HT est déconnecté
    Membre à l'essai
    Inscrit en
    Juin 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Merci bon courage N'oublie pas de marquer RESOLU dans le titre
    Bye

  7. #7
    Membre à l'essai
    Inscrit en
    Septembre 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 15
    Points : 13
    Points
    13
    Par défaut [Résolu] Stocker dans un fichier en des variables de type...
    Exact !!

  8. #8
    Membre expérimenté
    Avatar de Aramis
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 493
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 493
    Points : 1 638
    Points
    1 638
    Par défaut
    Non!!! tu dois modifier le titre de TON PREMIER MESSAGE

    voila ! :mrgeen:

    @->--

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

Discussions similaires

  1. [Oracle] Stocker ma requête dans un fichier poyr y faire appel en PHP
    Par alex007 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 13/03/2006, 10h11
  2. stocker un bitmap dans un fichier
    Par zenzo dans le forum Langage
    Réponses: 4
    Dernier message: 25/01/2006, 15h22
  3. Stocker des jpg dans un fichier
    Par jmjmjm dans le forum Langage
    Réponses: 6
    Dernier message: 10/11/2005, 22h07
  4. [XML] stocker des données dans un fichier XML
    Par R3iTt0R dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/05/2005, 16h51
  5. Réponses: 3
    Dernier message: 27/01/2004, 18h46

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