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 :

Nombre de ligne dans un fichier sans le parcourir


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 60
    Par défaut Nombre de ligne dans un fichier sans le parcourir
    Bonjour à tous,

    Comment pourrais-je connaitre le nombre le ligne dans un fichier texte sans le parcourir.
    J'ai fais des recherches sur le net mais je ne trouve rien de concluant.
    Si quelqu'un a une solution je suis preneur.

    D'avance merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Par défaut
    Tu dois le parcourir pour le découvrir. Passage obligé!

    Est-ce que c'est des gros fichiers que tu dois traiter? Si oui tu peux en plusieurs étapes avec un buffer pour éviter de tout charger en mémoire.

  3. #3
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Je confirme ce que dit PatteDePoule, car il faut pouvoir compter le nombre de caractères CRLF... Donc il faut lire le fichier, mais pas nécessairement le charger en mémoire. Tu peux déjà essayer ceci :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    var lines = File.ReadLines(@"X:\<chemin>\TonFichier.ext").Count();
    Si les performances ne te donnent pas satisfaction, alors il faudra envisager des solutions plus évoluées comme suggéré par PatteDePoule.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  4. #4
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Si ton fichier est un fichier de données à pas fixe, à ce moment, tu peux gruger en divisant la taille du fichier par la taille d'une ligne.
    Mais bon, c'est un cas bien particulier, il y a peu de chances que ce soit ton cas...

Discussions similaires

  1. Compter le nombre de ligne dans un fichier
    Par amine_en_france dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 31/05/2007, 17h19
  2. Réponses: 5
    Dernier message: 10/01/2007, 22h10
  3. Nombre de lignes dans un fichier
    Par theshark85 dans le forum C
    Réponses: 48
    Dernier message: 05/05/2006, 10h15
  4. [Fichier] Nombre de ligne dans un fichier texte
    Par NewSer dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 10/11/2004, 16h58
  5. Réponses: 2
    Dernier message: 02/03/2004, 19h38

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