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

GTK+ avec C & C++ Discussion :

chargement d'un combobox à partir d'un fichier text


Sujet :

GTK+ avec C & C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 31
    Points : 20
    Points
    20
    Par défaut chargement d'un combobox à partir d'un fichier text
    Bonjour,
    J'ai charge un combobox à partir d'un fichier text ou sont rangées une donnée par ligne.
    le code est le suivant:
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    /*Chargement de la combobox*/
       GIOChannel  * p_file = NULL;
       GError      * p_err  = NULL;
       gchar       * p_buf  = NULL;
       int taille;
     
      /*Ouverture du fichier text "memocat.txt"*/
       p_file = g_io_channel_new_file ("memocat.txt", "r", & p_err);
       if (p_file != NULL) //Si le fichier existe bien
       {
          p_buf = g_malloc (20);  /* Taille de buffer suffisante. */
          if (p_buf != NULL)
          {
             /* Lecture ligne par ligne. */
            while (g_io_channel_read_line (p_file, &p_buf, NULL, NULL, NULL) ==
                      G_IO_STATUS_NORMAL)
             {
                /*
                 * Il faut enlever le \n qui se trouve a la fin de la chaine et
                 * le remplacer par un zero de fin de chaine soit \0.
                 */
                gchar * p = strchr (p_buf, '\n');
     
                if (p != NULL)
                {
                   *p = 0;
                }
                /*Troncature du mot pour ne garder qu'une partie*/
                taille = strlen(p_buf)-5; /*4 lettres de "Cat:" + 1 pour ','*/
                memmove (p_buf, p_buf+4, taille);
                p_buf[taille]=0;
                taille = strlen(p_buf)-1; /*1 pour ','*/
                memmove (p_buf, p_buf, taille);
                p_buf[taille]=0;
                /*Chargement du mot danS le combobox*/
                gtk_combo_box_append_text (GTK_COMBO_BOX(pCombo_cat), p_buf); 
                g_printf ("%s\n", p_buf);
             }
          }
       }
        else
       {
          /* Erreur d'ouverture du fichier. */
          g_printf ("%s\n", p_err->message);
          g_error_free (p_err);
       }
    Le truc c'est kil faudrai ke je puisse charger un combobox soit à partir d'un fichier text avec une info par ligne, ou bien à partir d'un fichier text avec des info les unes a la suite des autres.
    j'ai oublie de preciser ke ces info etaitent ecrites de cette maniere : cat: '...', cat:'...,
    Je ne vois pas koment faire, pourreiz vous m'aider?

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Salut !


    Si tu utilise des séparateur dans ton fichier, par exemple:
    cat:cat1;cat:cat2;...;cat:catn
    Tu peux utiliser la fonction strtok en lui fournissant comme séparateur le caractère ";" ou pourquoi pas "," si tel est ton séparateur, le reste de la chaîne cat:une_cat est vite extraite !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Remplir combobox à partir d'un fichier texte
    Par MdSonper dans le forum VB.NET
    Réponses: 2
    Dernier message: 02/02/2015, 15h01
  2. remplir une combobox à partir d'un fichier .csv
    Par wolverine1987 dans le forum MFC
    Réponses: 24
    Dernier message: 28/04/2009, 11h00
  3. Chargement d'une table à partir d'un fichier texte
    Par Trebor_ dans le forum Débuter
    Réponses: 2
    Dernier message: 21/02/2008, 14h31
  4. chargement d'un combobox à partir d'une table access
    Par sarah_s dans le forum Windows Forms
    Réponses: 2
    Dernier message: 21/05/2007, 17h19
  5. Chargement d'un combobox à partir d'un fichier text
    Par claire_cartier dans le forum GTK+ avec C & C++
    Réponses: 7
    Dernier message: 04/04/2007, 10h04

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