Bonjour,
Je souhaite transférer par socket des données et des fichiers
Actuellement, je sais transférer des données avec un serveur ayant un code de ce genre-là
Mais maintenant de souhaite transférer également des fichiers. Et là je rencontre un problème assez simple : si le fichier contient le caractère de fin de ligne, le code String ligne = entrée.readLine(); va faire que je ne traiterai pas le code complètement.
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 public void run() { try { BufferedReader entrée = new BufferedReader(new InputStreamReader(connexion.getInputStream())); PrintWriter sortie = new PrintWriter(connexion.getOutputStream(), true); boolean arrêter = false; while (!arrêter) { String ligne = entrée.readLine(); if (ligne == null) arrêter = true; else { int ier = 0; String answer = ""; } connexion.close(); } catch (IOException e) { System.err.println(e); } } }
J'ai vu dans un autre sujet ici
comment transférer un fichier. OK mais dans mon cas, je dois transférer en même temps un fichier et des données relatives à ce fichier
Une première solution serait de modifier le String ligne = entrée.readLine() avec un autre caractère pour ne pas m'arrêter au premier /n.
Une autre solution serait d'adapter le WriteObject().
Mais dans un cas comme dans l'autre, je ne sais pas comment faire
Merci d'avance pour votre aide
Partager