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

Delphi Discussion :

lecture d un fichier en commencant par la fin


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 48
    Points : 43
    Points
    43
    Par défaut lecture d un fichier en commencant par la fin
    bonjour
    je voudrais lire un fichier text en commencant par la fin en arriere

    quelqu un pouurai m aider ?
    merci

  2. #2
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Il faut d'abord savoir ce que tu entends par la fin du fichier Est-ce le dernier caractère, la dernière ligne ?
    Si c'est par ligne, je préconise de toute façon la lecture complète au moyen d'un TStrings et puis boucler de la fin au début :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    with TStringList.Create do
    try
      LoadFromFile(NomDuFichier);
      for I := Count-1 downto 0 do
      begin
        Ligne := Strings[I];
        // Traitement sur Ligne
      end;
    finally
      Free;
    end;

  3. #3
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    si c'est un autre type de fichier (Fichier typé) alors voir : seek et FileSize dans l'aide de delphi

    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
    procedure TForm1.Button1Click(Sender: TObject);
    var
       f: file of Byte;
       size: Longint;
       i: Integer;
    begin
      if OpenDialog1.Execute then
      begin
        AssignFile(f, OpenDialog1.FileName);
        {$i-}
        Reset(f);
        if ioresult<>0 then exit;
       {$i+}
        try
          size := FileSize(f);
          Seek(f, size-1);
          .....
        finally
          CloseFile(f);
        end;
      end;
    end;

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 48
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par sjrd
    Il faut d'abord savoir ce que tu entends par la fin du fichier Est-ce le dernier caractère, la dernière ligne ?
    Si c'est par ligne, je préconise de toute façon la lecture complète au moyen d'un TStrings et puis boucler de la fin au début :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    with TStringList.Create do
    try
      LoadFromFile(NomDuFichier);
      for I := Count-1 downto 0 do
      begin
        Ligne := Strings[i];
        // Traitement sur Ligne
      end;
    finally
      Free;
    end;

    clea marche bien

    j usqu a quel taile de fichier le tstringlist marche correctement ?

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Pour la taille regarde l'aide sur TStringList.Capacity

    Cordialement

  6. #6
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Citation Envoyé par m.nico
    j usqu a quel taile de fichier le tstringlist marche correctement ?
    Jusqu'à la taille de ta RAM

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 48
    Points : 43
    Points
    43
    Par défaut
    merci pour les reponses

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

Discussions similaires

  1. [WD16] Ouvrir le premier fichier qui commence par une chaine connue
    Par EriCstoFF dans le forum WinDev
    Réponses: 2
    Dernier message: 28/10/2011, 16h27
  2. [ksh] Lecture d'un fichier unicode ligne par ligne
    Par Arnaud F. dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 30/07/2008, 20h46
  3. Lecture d'un fichier binaire ligne par ligne
    Par hacksi dans le forum Langage
    Réponses: 4
    Dernier message: 06/03/2008, 12h08
  4. Lecture d'un fichier .wav octet par octet
    Par DevVB dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 27/07/2007, 12h10
  5. lecture d'un fichier txt ligne par ligne
    Par SoBaKa dans le forum Général Python
    Réponses: 4
    Dernier message: 06/03/2007, 12h02

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