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 :

récupérer partie d'un fichier texte


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 10
    Par défaut récupérer partie d'un fichier texte
    Bonjour,

    Je dois faire quelque chose qui m'a pas l'air très dur mais malheuresement, je n'ai pas la moindre idée de la manière de procéder,

    J'ai un fichier textes composés d'une succession de chaines de caractères comme celle ci :

    16:26:28 (9.50 MB/s) - `MEGASAVE.tar.gz.14' saved [942668/942668]
    16:26:46 (9.60 MB/s) - `MEGASAVE.tar.gz.15' saved [942668/942668]

    Mille plus précisément et je souhaite juste extraire 9.50 MB/s et 9.60 MB/s...meme pas dans un tableau, juste récuperer les valeurs...

    Je ne connais pas les pointeurs. donc il me faudrait qqchose d'assez simple.

    Merci infiniment,

    Mon adresse email est vincent_roye@hotmail.com

  2. #2
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Si t'es sous Linux, ne fais pas de programme C pour ça, la commande grep te sort les lignes d'un fichier (ou flux) où le masque de recherche (expressions regulieres POSIX) est vérifié

    Edit : euh, oublie, j'avais mal compris ce que tu voulais faire, toujours est il qu'on doit surement pouvoir utiliser les outils du shell pour ça (sed? mais c'est compliqué)

  3. #3
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 10
    Par défaut reponse
    Le problème est que sous linux je ne connais rien, j'ai déjà fait un grep pour recuperer ces lignes...mais après..mistere...

    mon programme bash est celui là :

    #!/bin/bash
    wget http://10.0.3.1/MEGASAVE.tar.gz -o RESULTADO.txt
    grep "B/s" RESULTADO.txt >> resultado2.txt
    rm MEGASAVE.tar.gz

    donc si tu peux me le completer ça serait très cool...
    désolé j'y connais vraiment rien

    merci beaucoup

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par vincent02
    Je ne connais pas les pointeurs. donc il me faudrait qqchose d'assez simple.
    Tu ne peux pas programmer en C sans connaitre les pointeurs. Je te conseille de commencer par apprendre le C, ou de choisir un autre langage pour faire ça.

  5. #5
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Bon c'est faisable avec "sed" mais c'est assez compliqué et je connais presque pas.
    Ici un tuto pour sed
    http://pegasus.rutgers.edu/~elflord/unix/sed.html

  6. #6
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    toujours est il qu'on doit surement pouvoir utiliser les outils du shell pour ça
    Avec cut ça doit passer tout seul mais on sort du cadre du C.

    Concernant le but premier, tu peux déjà commencer par pondre l'algo.

    Tu lit ton fichier ligne par ligne et tu récupère que ce que tu as besoin.

    Une méthode bête et méchante pourraient être une lecture avec scanf du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fscanf( fichier, "%d:%d:%d (%f %s) %s", &heure, &minute, &seconde, &debit, &unite , &reste );
    Bon les heures minutes secondes le reste, tu les zappes, tu ne récupère que le débit et l'unité.

    C'est pas très fin comme étude, mais ça peut peut être servir pour un début.

    D'autres méthodes existent par exemple tu extrais la partie de ta ligne qui est entre parenthèse (tu cherches le début et la fin des parenthèses et tu récupère ce qu'il y a au milieu)

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/10/2009, 13h32
  2. Récupérer une partie d'un fichier texte
    Par Ladgalen dans le forum Fortran
    Réponses: 2
    Dernier message: 17/05/2008, 17h43
  3. Récupérer contenu d'un fichier texte
    Par matt8-5 dans le forum Langage
    Réponses: 5
    Dernier message: 02/11/2006, 17h58
  4. [Cryptage] Récupérer Date cryptée dans fichier text
    Par SansSucre dans le forum Access
    Réponses: 2
    Dernier message: 29/07/2006, 13h03
  5. [VB]recherche dans une partie d'un fichier texte
    Par malhivertman1 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 19/01/2006, 11h56

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