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

Entrée/Sortie Java Discussion :

Transferer un jar via les sockets


Sujet :

Entrée/Sortie Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 97
    Points : 38
    Points
    38
    Par défaut Transferer un jar via les sockets
    Bonjour,

    j'essaie de faire du transfert de fichier .jar via les sockets. Le nombre de bytes transférés est correct mais impossible de décompresser l'archive reconstituée.
    Voici le code:

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    public byte[] serializeBundle(String bundleName) {
    		byte[] buffer = new byte[0];
    		try {
    			String path = System.getProperty("user.dir") + File.separator + "bundle" + File.separator + bundleName;
    			FileInputStream fis = new FileInputStream(path);
    			buffer = new byte[fis.available()];
    			System.out.println(buffer.length);
    			fis.close();
    			System.out.println("Fichier sérialisé...");
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
     
    		return buffer;
     
    	}
     
    	public void deserializeBundle(byte[] buffer) {
    		System.out.println("Taille buffer: "+buffer.length);
    		try {
    			if (buffer != null && buffer.length > 0) {
    				String path = System.getProperty("user.dir") + File.separator + "bundle" + File.separator + "temp"+tempIdPos+".jar";
    				tempIdPos++;
    				System.out.println(path);
    				FileOutputStream fos = new FileOutputStream(path);
    				DataOutputStream dout = new DataOutputStream(fos);
    				dout.write(buffer);
    				dout.flush();
    				dout.close();
    				fos.close();
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    C'est très important, je suis limité dans le temps pour résoudre ce problème, merci pour votre aide par avance!

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Tu ne lis pas les données donc normal que ton buffer soit vide.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 97
    Points : 38
    Points
    38
    Par défaut
    Merci pour ton aide,

    Tu pourrais préciser quand tu dis "tu ne lis pas le buffer", au moins un bout de code pour que je puisse trouver des exemples ou aller voir la doc.

    Merci

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Dans ta méthode serializeBundle, tu ne lis pas tes données, tu ne fais pas d'appel à une méthode (comme read de la classe FileInputStream) pour remplir ton buffer.

Discussions similaires

  1. Réponses: 6
    Dernier message: 05/12/2008, 21h19
  2. programmer un chat via les sockets
    Par mouskro76 dans le forum Linux
    Réponses: 1
    Dernier message: 14/10/2007, 12h28
  3. erreur lors de l'envoie de donné via les socket.
    Par poporiding dans le forum C++
    Réponses: 1
    Dernier message: 23/05/2006, 14h23
  4. ICMP Echo via les Sockets
    Par trinity.sakura dans le forum Langage
    Réponses: 4
    Dernier message: 12/09/2005, 16h01
  5. [MFC] Faible utilisation des sockets via les MFC ?
    Par Yellowmat dans le forum MFC
    Réponses: 1
    Dernier message: 25/08/2005, 17h15

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