Extraire des valeurs d'un string provenant d'une socket [Résolu]

KiKoMaSo 6 Messages postés samedi 22 septembre 2007Date d'inscription 10 juin 2008 Dernière intervention - 2 mai 2008 à 23:41 - Dernière réponse : KiKoMaSo 6 Messages postés samedi 22 septembre 2007Date d'inscription 10 juin 2008 Dernière intervention
- 3 mai 2008 à 09:06
Bonjour

Je ne m'y connait pas trop en C# mais dois l'utiliser pour une application PDA.

En fait avec l'application PDA (C#) j'envoi une requête à un serveur (créé en C++) et mon PDA reçoit la réponse comme ceci (par exemple):
001.pgp@002.pgp@003.pgp ... etc le tout dans un string.
(001.pgp est un nom de fichier)




Pour résumer en un exmple j'ai ceci en gros:
string FileAttente =
"001.pgp@002.pgp@003.pgp";




Je voudrais séparer mes noms de fichier 001.pgp, 002.pgp ..etc pour les afficher un par un dans une listbox.
car pour le moment j'ai ceci:
listBoxFileAttente.Items.Add(FileAttente);
et cela m'affiche tout sur une ligne comme ceci (ce qui est normal):



001.pgp@002.pgp@003.pgp





Ce qui me pose problème c'est de sortir les noms de fichier en me servant des arobases comme délimiteur afin d'obtenir ceci dans ma listbox:
001.pgp
002.pgp
003.pgp

Je ne sais pas si vous avez compris ma demande alors n'hésitez pas ;)
Merci pour vos réponses futures.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 3 mai 2008 à 00:06
3
Merci
Salut,

Dans ton cas String.Split devrait suffire.

/*
coq
MVP Visual C#
CoqBlog
*/

Merci cs_coq 3

codes-sources a aidé 81 internautes ce mois-ci

Commenter la réponse de cs_coq
KiKoMaSo 6 Messages postés samedi 22 septembre 2007Date d'inscription 10 juin 2008 Dernière intervention - 3 mai 2008 à 09:06
0
Merci
Merci beaucoup, tu viens de m'enlever une belle épine du pied ;)

Je mets un bout de code si ça peux en aider certain.

--------------------------------------------------------------------------------------------------

                (...)

   

            int Indice, CompteurSplit;

                Indice=0;

                CompteurSplit = 0;






               


(...)




                FileAttente = System.Text.Encoding.ASCII.GetString(data, 0, bytes);        // Je reçois dans un string la chaine que m'envoit le serveur.
                string[] split = FileAttente.Split(new Char[] { '@' });         // Je mets dans split les noms de mes fichiers qui sont séparés par des @
                int splitTaille = split.Length;        



// Je récupére le nombre de fichier dans qu'il y a dans split (Je croyais qu'il fallait utiliser Rank mais ça ne fonctionne pas alors qu'avec Length ça passe.







                while (CompteurSplit != splitTaille)        



// Pour finir, une boucle pour afficher les noms de fichiers les uns à la suite des autres.





                {
                    listBoxFileAttente.Items.Add(split[Indice]);
                    CompteurSplit++;
                    Indice++;
                }




                (...)






--------------------------------------------------------------------------------------------------

Encore merci.

PS: Il est possible que j'ai encore besoin de vous par la suite lol
Commenter la réponse de KiKoMaSo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.