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 :

wget tableau de données


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 45
    Par défaut wget tableau de données
    j'ai un petit programme en C qui va récupérer des données d'un site (29 au total) via la comamnde wget , je voudrais savoir comment je peux récupérer les données dans un tableau

    voilà la commande en perl

    `wget "http://nomads.ncdc.noaa.gov/dods/NCEP_NARR_DAILY/${yymm}/${date}/narr-a_221_${date}_0000_000.ascii?tmpprs[6][0:28][$nlat][$nlon]" -O out`;

    vous voyez bien qu'il va récupérer 29 données (de 0 à 28) , c'est opérationnel en perl , mais j'arrive pas à le faire en C

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    vous voyez bien qu'il va récupérer 29 données (de 0 à 28)
    Pas trop.
    le c et perl ne fonctionnent pas de la même façon.

    Appelé depuis c, wget ne va rien faire de plus que s'il était appelé depuis une ligne de commande (cmd.exe ou bash).

    En c, il faut donc savoir ce que fait un appel à wget.

    Il me semble qu'il enregistre un fichier dans le répertoire courant.

    Il suffit alors de connaitre le format dudit fichier pour le lire et récupérer les informations intéressantes.

    Si on lance la requête sur le serveur en question, on obtient une réposen du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    [0][0][0], 297.72623
     
    [0][1][0], 295.52853
     
    [0][2][0], 293.56235
     
    [0][3][0], 293.59088
     
    [0][4][0], 292.42126
    ...
    le format de chaque ligne semble être :
    "[%d][%d][%d], %f"

    il suffit alors de jouer avec scanf :

    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
    #include <stdio.h>
    int main(void){
        char buf[256];
        /* fgets permet de lire une ligne depuis un fichier */
        while(NULL != fgets(buf, sizeof buf, stdin)) {
            int i[3];
            float f[1]; 
            /* sscanf permet d'extraire des valeurs depuis une entrée formatée */
            if(4 == sscanf(buf, "[%d][%d][%d], %f", i, i + 1, i + 2, f)) {
                printf("param lus : %d %d %d %f\n", i[0], i[1], i[2], f[0]);
            } else {
                printf("la ligne n'est pas valide\n");
            }
        }
        return 0;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    >./a.exe < narr-a_221_20041126_0000_000.ascii@tmpprs[6][0:28][45][300]
    la ligne n'est pas valide
    param lus : 0 0 0 297.726227
    la ligne n'est pas valide
    param lus : 0 1 0 295.528534
    la ligne n'est pas valide
    param lus : 0 2 0 293.562347
    la ligne n'est pas valide
    param lus : 0 3 0 293.590881
    la ligne n'est pas valide
    param lus : 0 4 0 292.421265
    la ligne n'est pas valide
    ...
    Pour remplir en plus un tableau, il suffit de modifier le bloc qui contient le premier printf.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 45
    Par défaut
    merci bcp mec

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

Discussions similaires

  1. [VBA-E] Tableau de données <=> Fichier Texte
    Par P50 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/12/2005, 16h02
  2. Réponses: 7
    Dernier message: 15/12/2005, 14h24
  3. exporter un tableau de donnée vers un document word
    Par demerzel0 dans le forum Access
    Réponses: 2
    Dernier message: 04/11/2005, 11h57
  4. Filtrer un tableau de données
    Par Yux dans le forum Langage
    Réponses: 12
    Dernier message: 13/10/2005, 22h21
  5. [Collections] Transformer un tableau de données en une chaîne
    Par NATHW dans le forum Collection et Stream
    Réponses: 12
    Dernier message: 03/06/2004, 16h44

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