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

Pascal Discussion :

Après un reset() le mode écriture est toujours activé ?


Sujet :

Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 44
    Par défaut Après un reset() le mode écriture est toujours activé ?
    je m'explique, je doi faire une procédure qui recoit 2 variables fichiers en paramètre (f1 et f2) et renregistre dans f2 le renversé de f1.

    exemple:
    f1 contient "pouet" donc la procedure doit enregistrer "teuop" dans f2.

    j'ai donc fait comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    begin
       rewrite(f2);
       while not eof(f1) do begin
          read(f1, e);
          reset(f2);
          write(f2, e);
       end;
    end;
    Bref pour chaque lettre de f1, la boucle doit pointer au debut de f2 et rajouter cette lettre lu dans f1 puis passe à la suivant.
    Mais le problème est qu'à la fin du programme f2 ne contient que "t" or j'ai vérifier la boucle s'effectue bien une fois par lettre contenu dans f1.
    J'ai donc pensé qu'aprés le reset qui doit replacer le pointeur au debut de f2, le mode écriture était peut-être plus active mais ca m'étonne.
    Je voudrais savoir si quelqu'un saurai d'où vien le problème et comment arranger cela.
    merci d'avance

  2. #2
    ALT
    ALT est déconnecté
    Membre Expert
    Avatar de ALT
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 383
    Par défaut
    Je ne sais pas si tu as bien regardé, mais le fichier f2 contient la dernière lettre de f1.
    Donc, l'écriture s'est bien effectuée.

    La conclusion qui aurait dû ( ) s'imposer à toi est :
    Ah ben oui, j'écris toujours sur la même position.
    Donc...


    J'écrase à chaque fois le caractère précédent !
    Il te faut donc écrire dans f2 en une seule fois.

    Bon courage !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 44
    Par défaut
    Donc il faut que je concatène (ca se dit?) dans une autre variable et qu'à la fin je l'enregistre dans le fichier f2?
    La 3ème variable doit donc être de type TEXT je me trompe?

    Le problème c'est que le fichier ne doit pas forcément contenir que des caractères. Au debut je doit déclaré un type "Element" (correspondant à ce que contient le fichier) qui dans mon exemple est un "char" mais je fais comment pour le cas général?

  4. #4
    ALT
    ALT est déconnecté
    Membre Expert
    Avatar de ALT
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 383
    Par défaut
    La variable sera de type chaîne ("string").
    Pour le reste, c'est bon.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 44
    Par défaut
    si je fais un string il y a le problème du type "Element" et en plus le fichier devra être limité a 255 caractères. je me trompe?

  6. #6
    ALT
    ALT est déconnecté
    Membre Expert
    Avatar de ALT
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 383
    Par défaut
    Non.
    Tu ne te trompes pas.

    Si ton type est imposé (ce que tu n'avais pas précisé, sauf erreur de ma part), alors ton fichier doit être du même type (file of element).
    Mais dans ce cas, il n'y a pas de fin de fichier (EOF). Tu dois alors raisonner en nombre d'element que tu écris (ou lis) dans ton fichier.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/10/2011, 12h01
  2. Tester si la connexion à une base est toujours active
    Par richard038 dans le forum Bases de données
    Réponses: 3
    Dernier message: 12/02/2007, 10h00
  3. [Socket] savoir s'il est est toujours active
    Par piff62 dans le forum Langage
    Réponses: 2
    Dernier message: 04/10/2006, 14h55
  4. Réponses: 5
    Dernier message: 07/07/2006, 11h51
  5. [VB.Net] isPostBack est toujours False
    Par graphicsxp dans le forum ASP.NET
    Réponses: 10
    Dernier message: 28/02/2006, 18h23

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