• # je ne pense pas ...

    Posté par  . Évalué à 2.

    Je ne suis pas un spécialiste ni de c++ ni de wxwindows (qui s'apelle maintenant wxwidgets), mais à ma connaissance, wxwidgets est un toolkit graphique (ou un wrapper de toolkits graphiques). Ce genre de fonction n'aurait rien à y faire.
    • [^] # Re: je ne pense pas ...

      Posté par  . Évalué à 2.

      Tu as également des classes pour les chaînes de caractères (wxString par exemple) ou la lecture de fichiers, locaux ou distants.
      • [^] # Re: je ne pense pas ...

        Posté par  . Évalué à 3.

        oui mais c'est pour unifier les types et leur traitements sur différentes plateformes.
        La fonction que tu recherche est bcp plus spécifiques. Et puis ca ne doit pas etre trop difficile à refaire (en supposant que CSV soit bien Comma Separated Value):

        tableau à deux dimensions T[i][j]
        initialiser T[i]
        lire une ligne
        découper la ligne en tokens séparés par un caractère ',' ou autres au choix
        remplir T[i][j] avec les tokens
        boucler jusqu'à la fin du fichier
        return T
        • [^] # Re: je ne pense pas ...

          Posté par  . Évalué à 2.

          Ca devrait marcher, mais j'essaie de ne pas réinventer la roue ;-) Ce serait bêter de refaire ça si une fonction toute faite et robuste existe qq part !
    • [^] # Re: je ne pense pas ...

      Posté par  . Évalué à 2.

      non, je crois qu'il y a aussi des fonctions réseau par exemple
  • # Il y a bien ça, mais...

    Posté par  . Évalué à 2.

    Il y a bien ça qui marche, mais c'est sensible aux espaces / tabulations en fin de ligne. wxFileInputStream input( "fichier.csv" ); wxTextInputStream text( input ); text.SetStringSeparators("\";"); field[0] = text.ReadWord (); Je continue donc à chercher mieux.
    • [^] # Re: Il y a bien ça, mais...

      Posté par  . Évalué à 3.

      attention : je crois que le format csv est un peu plus subtil que ça, par exemple que se passe-t-il si l'un des champs contient le caractère ";" ?
  • # Et les try catch ?

    Posté par  . Évalué à 2.

    Le problème du CSV étant plus ou moins résolu, je butte maintenant sur la gestion des exceptions. Y a-t-il un mécanisme de type try ... catch ? En fait, les URLS avec paramètres semblent faire planter le programme lorsque je les ouvre...
    • [^] # Pour ceux qu'une solution intéresse...

      Posté par  . Évalué à 2.

      Réponse : oui, il y a des try catch. Il faut changer les options de compilation sous Dev-C++. Ajout de la commande : -fexceptions .

      Pour les URLs, il faut utiliser GetC (ce qui semble plus lent) plutôt que Read et boucler tant que LastRead est égal à 1 (Eof ne marche pas non plus dans ce cas et il faut donc utiliser LastRead).

      Voir mon commentaire : http://linuxfr.org/forums/20/2253.html(...) .

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.