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# Discussion :

[C#] Socket et fichier binaire


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut [C#] Socket et fichier binaire
    Bonjour à tous,

    Je souhaite envoyer un fichier binaire par socket ... Mais je n'obtient jamais le bon fichier.

    J'ai tout essayé StreamReader System.IO.File.ReadAllText, readAllByte...
    mais rien n'y fait je n'ai pas les bon caractères.

    J'utilise cette méthode pour envoyer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String pop = this._clients[Sock].Pop();
                Byte[] Message = System.Text.Encoding.ASCII.GetBytes(pop);
                Sock.Send(Message, 0, Message.Length, SocketFlags.None);
    et cela pour recevoir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Byte[] message = new Byte[8192];
                Int32 rcv = this._socket.Receive(message);
    String msg = System.Text.Encoding.ASCII.GetString(message).Substring(0, Nb);
    Comment puis-je récupérer correctement le fichier sachant que ma méthode créant un paquet prend un String que ca soit du texte, un fichier etc ... et sachant que je ne veux pas envoyer le fichier en entier mais par paquet dans chaque trame il y aura le nom_du_fichier\0la_data_sur_par_exemple_8192octets...


    Je vous remercie d'avance.

    Cordialement,
    NeoKript

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 492
    Par défaut
    Dès que vous passez par une string, vous avez perdu.
    Dans la classe Socket (http://msdn.microsoft.com/fr-fr/libr...et(VS.80).aspx)
    Send et Receive prennent toujours des byte[].

    Pourquoi passer par des Strings qui vous foutent dans la m****.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fichier binaire, string et sockets
    Par 10_GOTO_10 dans le forum Langage
    Réponses: 4
    Dernier message: 14/08/2010, 10h23
  2. Fichiers binaires et sockets
    Par theawe dans le forum Réseau
    Réponses: 9
    Dernier message: 06/07/2009, 09h09
  3. [Debutant] Comment lire la taille d'un fichier binaire ?
    Par Invité dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 18/12/2003, 19h20
  4. communication fichier binaire fichier txt
    Par micdie dans le forum C
    Réponses: 3
    Dernier message: 05/12/2002, 00h19
  5. fichier binaire ou texte
    Par soussou dans le forum C++Builder
    Réponses: 4
    Dernier message: 14/06/2002, 13h39

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