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

Réseau C Discussion :

conversion tableau vers chaine de caractere


Sujet :

Réseau C

  1. #1
    Membre actif
    Inscrit en
    Décembre 2005
    Messages
    251
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 251
    Points : 267
    Points
    267
    Par défaut conversion tableau vers chaine de caractere
    bonjour j aimerait programmer un client et un serveur qui s echange comme type de données des tableau.j ai fait un post dans le sous forum developpement reseau http://www.developpez.net/forums/sho....php?t=235691.Apparement une socket ne peut envoyer que des types caractères.
    Si j ai un tableau sur le serveur et que je veux l envoyer vers le client il faut que je formate le tableau sous forme de chaine puis que je l envoie.
    je prend les variables suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int tab[3][3]
    char *buff
    ma question est la suivante.quelle taille dois je mettre à ma chaine qui doit recevoir le tableau?

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par sneb5757
    <...>une socket ne peut envoyer que des types caractères.
    WTF ? Une socket peut transmettre des données binaires brutes. Simplement elles doivent être dans un format qu'il n'est pas toujours facile de définir et de manipuler. Le format texte est simplement plus clair, plus portable et plus facile à mettre en oeuvre.
    Si j ai un tableau sur le serveur et que je veux l envoyer vers le client il faut que je formate le tableau sous forme de chaine puis que je l envoie.
    OK, c'est ton choix.
    je prend les variables suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int tab[3][3]
    char *buff
    ma question est la suivante.quelle taille dois je mettre à ma chaine qui doit recevoir le tableau?
    Pas si vite. Il faut commencer par définir un format pour le tableau.
    CSV (Comma Separated Values) est un format courant et simple à mettre en oeuvre.

    Par exemple
    • Le transfert est organisé en lignes de textes
    • Une ligne de texte est une séquence de caractères terminée par un '\n'
    • Chaque ligne de texte représente une ligne du tableau
    • Chaque valeur est séparée de la suivante par une ','. Le nombre de valeurs est identique pour chaque ligne. C'est le nombre de colonnes du tableau.
    • La dernière ligne est suivie d'une ligne vide.

    Illustration :
    définit un tableau de 2 lignes de 3 colonnes valant :

  3. #3
    Membre actif
    Inscrit en
    Décembre 2005
    Messages
    251
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 251
    Points : 267
    Points
    267
    Par défaut
    ah oui tu as raison c est bete ce que j ai dis.

    Donc si tu dis que c est mon choix de mettre le tableau en chaine de caractère est ce que je peux directement envoyer le tableau tel quel par socket sans passer par une conversion?

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par sneb5757
    Donc si tu dis que c est mon choix de mettre le tableau en chaine de caractère est ce que je peux directement envoyer le tableau tel quel par socket sans passer par une conversion?
    C'est techniquement possible, mais ça peut poser des problèmes de codage assez complexe si on veut être portable (client/serveur, on a pas le choix...). La mise en oeuvre de BER ou de XDR n'est pas une mince affaire.

    Je recommande donc le format texte qui est beaucoup plus simple à mettre en oeuvre.

  5. #5
    Membre actif
    Inscrit en
    Décembre 2005
    Messages
    251
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 251
    Points : 267
    Points
    267
    Par défaut
    ouki donc CVS j aurai moins de problème?

  6. #6
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par sneb5757
    ouki donc CVS j aurai moins de problème?
    CSV

    Oui.

  7. #7
    Membre actif
    Inscrit en
    Décembre 2005
    Messages
    251
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 251
    Points : 267
    Points
    267
    Par défaut
    oui pardon j arrive même plus à lire dodo lol.

    merci beaucoup

Discussions similaires

  1. Réponses: 15
    Dernier message: 16/08/2007, 11h47
  2. conversion de int vers chaine de caractere
    Par el baz dans le forum Débuter
    Réponses: 10
    Dernier message: 13/08/2007, 11h08
  3. conversion entier vers chaine de caratères
    Par naima2005 dans le forum C++
    Réponses: 3
    Dernier message: 20/08/2006, 02h14
  4. [Tableaux] tableau de chaine de caractere
    Par Tempotpo dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2006, 13h54
  5. Conversion Date en chaine de caracteres et Inversement
    Par badara2 dans le forum Langage
    Réponses: 1
    Dernier message: 15/03/2006, 17h40

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