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

Langage Java Discussion :

Socket Lecture InputStream


Sujet :

Langage Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Socket Lecture InputStream
    Bonjour,

    Je ne suis pas très expérimenté en Java; Je connais mieux le C++.
    J'ai un programme qui crée un Socket et qui le connecte à un Serveur Applicatif écrit en C++. Celui-ci va m'envoyer une structure complexe:

    integer : longueur totale du message
    integer : identifiant du type de message.
    char[16] : date en ascii
    le type des données qui suivent dépend de cet identifiant.

    Comment "wrapper" l'InputStream pour traiter les données selon leur type (integer, float, short, char, ...)?

    merci d'avance

  2. #2
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Bonjour,

    tu peu utiliser un DataInputStream qui sert a ca

    par contre pour la compatibilité sur la taille et le format des donné avec le c++ je ne sais pas trop :s

    tu peu aussi recuperer directement la structure dans un objet via ObjectInputStream et l'interfaceExternalizable.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Socket Reading complex structure
    Bonjour Unknown0,

    Merci pour ta réponse. J'ai lu la documentation et cela me semble la voie à suivre (DataInputStream). Par contre, lire un objet, dans le cas présent, ne me semble pas être une bonne solution car le serveur applicatif envoie un stream de bytes. Je testerai ta solution et te ferai un petit topo si tu le désires

    Bien à toi.

  4. #4
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Enfaite pour lire en objet il y a deux solution l'interface Serializable ou la c'est java qui formate les donner, et l'interface Externalizable ou là c'est a toi de lire/écrire les donne comme tu le veux.

    Mais bon déjà dans un premier temps je pense que le faire toi même avec un simple DataInputStream pour voir déjà si les format d'envois des données sont bien les même

Discussions similaires

  1. probleme Socket et InputStream
    Par slifer dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 22/06/2011, 08h29
  2. Socket et InputStream TCP
    Par slifer dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 22/06/2011, 02h26
  3. Socket : lecture et écriture simultanée
    Par poukill dans le forum C++
    Réponses: 6
    Dernier message: 30/06/2010, 16h53
  4. Socket lecture non bloquante
    Par Darkthur dans le forum Multithreading
    Réponses: 2
    Dernier message: 22/05/2009, 18h28
  5. [IO::Socket] Lectures parasites
    Par gk14fire dans le forum Programmation et administration système
    Réponses: 1
    Dernier message: 04/04/2007, 22h38

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