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++Builder Discussion :

GetTok() fonction aider moi


Sujet :

C++Builder

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3
    Par défaut GetTok() fonction aider moi
    Bonjour,

    J'aimerais savoir le moyen de crée une Command nommé gettok (mirc)

    gettok("string1 string2 string3",2,32,buff); //return string2 et copie dans buff


    merci

  2. #2
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Regarde du coté de la fonction SubString:

  3. #3
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    Il y a aussi la fonction strtok qui appelée en boucle te permettrait d'obtenir ce que tu veux

    Tu peux utiliser ExtractStrings qui remplit une TStrings
    Ou faire ton propre algo avec Copy et PosEx
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Il y a aussi la fonction strtok qui appelée en boucle te permettrait d'obtenir ce que tu veux

    Tu peux utiliser ExtractStrings qui remplit une TStrings
    Ou faire ton propre algo avec Copy et PosEx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
          TCustomWinSocket *Socket)
    {
    String data;
    data = ClientSocket1->Socket->ReceiveText();
    Memo1->Lines->Add("Server: " + data);
    }
    Je veux obtenir le text du serveur ircx, et j'ai un peu de misère


    ma connexion réussi mais je ne peux pas chercher
    example :SERVEUR 353 ..............

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (data == 353) // COMMENT OBTENIR LE 2IEME MOT QUI EST 353 ?

  5. #5
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut

    As-tu regardé les fonctions ExtractStrings, PosEx, strtok ainsi que la classe TStringList et sa propriété DelimitedText, Delimiter et StrictDelimiter ?

    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
    TStrings *Items = new TStringList();
    try
    { 
      if (ExtractStrings(TSysCharSet() << ' ', TSysCharSet(), ClientSocket1->Socket->ReceiveText().c_str(), Items))
      {
        // 0 = 1er Mot = Serveur
        if (StrToInfDef(Items[1], -1) == 353) 
        {
          ...
        }
      }
    __finally
    {
      delete Items;
    }
    c_str() ou w_str() selon version 2009 ou pas !

    Je suis trop généreux, tu aurais pu proposer un code même qui ne fonctionne pas montrant ta recherche personnelle !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. aider moi de comprendre la fonction trim
    Par saida89 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/10/2008, 15h12
  2. [Kylix] aider moi KYLIX
    Par nabs dans le forum EDI
    Réponses: 2
    Dernier message: 12/05/2004, 08h57
  3. [Kylix] aider moi sous kylix merci
    Par nabs dans le forum EDI
    Réponses: 2
    Dernier message: 07/05/2004, 18h03
  4. Réponses: 2
    Dernier message: 26/03/2004, 09h15
  5. [Kylix] aider moi sur kylix
    Par nabs dans le forum EDI
    Réponses: 1
    Dernier message: 19/03/2004, 14h19

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