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 :

Methode optimisee pour lire la premiere ligne d'un fichier texte


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 210
    Par défaut Methode optimisee pour lire la premiere ligne d'un fichier texte
    bonjour,

    je voudrais lire la premiere ligne d'un fichier .TXT. J'ai en entree la String: 'nom du fichier'... je pensais a ReadFile, mais est ce qu'il y a mieux? Et sinon comment utiliser ReadFile? Merci

  2. #2
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    338
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 338
    Par défaut
    bonjour

    voir l'aide sur ReadLn

    à plus!

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 210
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
          h := OpenFile( PChar(fichiers[i]), ofs, OF_READ  );
     
          if GetFileSize(h,nil) <> 0 then begin
              ReadFile( h, s, 8*sizeof(char), read, nil );
              ShowMessage( s^ );
          end;
    voila mon code mais ca ne marche pas!

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 210
    Par défaut
    Oui mais la tu charges tout le fichier! moi je ne veux lire que la premiere ligne

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 210
    Par défaut
    J'aimerais bien une petite aide de ShaiLeTroll

  6. #6
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    338
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 338
    Par défaut
    Readln ne vous plait pas?

  7. #7
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    Citation Envoyé par Art19
    J'aimerais bien une petite aide de ShaiLeTroll
    Désolé, je n'avais pas vu ton sujet

    j'ai en plus la fonction dans ma collection, j'en avais une autre pour lire un nombre d'octet dans un très gros fichier mais je ne l'ai plus, mais c'est pas difficile à refaire avec blockRead

    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
    function GetFileFirstLine(const FileName: string) : string;
    var       
      InFile: TextFile;
    begin
      AssignFile(InFile, FileName); 
      Reset(InFile);
      try
        if not EOF(InFile) then
           Readln(InFile, Result)
        else
          Result := '';
      finally
        CloseFile(InFile);
      end;
    end;
    ce qui est la même chose que tout le monde bien sur !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    185
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2006
    Messages : 185
    Par défaut
    Mieux, je sais pas mais facile : tu utilises un tStrings

    ex:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ...
    var
       s : TStrings;
    begin
       s.LoadFromFile(filename); // charger le fichier
       s.Strings[0];                  // la première ligne de ton fichier.
    end;

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/04/2009, 19h04
  2. [Débutant] Ne pas lire la première ligne d'un fichier texte à son ouverture
    Par Mlezen dans le forum MATLAB
    Réponses: 14
    Dernier message: 11/02/2009, 17h39
  3. Comment lire la dernière ligne d'un fichier text.
    Par Ardely dans le forum Delphi
    Réponses: 29
    Dernier message: 20/01/2007, 23h29
  4. Comment lire une seul ligne d'un fichier texte?
    Par Julien1987 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 18/01/2007, 13h36
  5. [batch]Lire la 2ème ligne dans un fichier texte
    Par norac dans le forum Windows
    Réponses: 2
    Dernier message: 07/07/2006, 11h27

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