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

C Discussion :

Lire la nième ligne d'un fichier


Sujet :

C

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 14
    Points : 17
    Points
    17
    Par défaut Lire la nième ligne d'un fichier
    Bonjour,

    Après de nombreuses recherches, je ne trouve toujours pas de réponse à ma question : je cherche à lire la nième ligne d'un fichier, sans avoir à lire celles qui précèdent (ces lignes sont en même temps gérées par d'autres threads). Les lignes des fichiers n'étant pas toujours de même taille, je me vois mal utiliser fseek pour toujours atteindre avec certitude la ligne souhaitée. N'existerait-il pas une fonction toute faite pour faire cela, ou une petite astuce?

    Merci beaucoup pour votre aide!

  2. #2
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Cette question revient souvent. Pour aller à la ligne N d'un fichier texte il faut avoir lu toutes les lignes précédentes. Il n'y a ni fonction ni astuce pour pouvoir faire autrement. fseek ne peut être utilisée sur un fichier texte qu'avec la valeur 0 ou une valeur retournée par ftell et toujours avec la constante SEEK_SET. Si tu dois donc faire plusieurs déplacements, parcours dans un premier temps tout le fichier pour enregister, à l'aide de ftell, toutes les positions des débuts de ligne. Tu pourras alors, par la suite, utiliser fseek pour aller à une ligne donnée.

Discussions similaires

  1. afficher, extraire la nième ligne d'un fichier
    Par italiasky dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 08/04/2007, 19h20
  2. 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
  3. 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
  4. Réponses: 2
    Dernier message: 05/09/2006, 21h14
  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