Comme je l'avais écrit dans un autre forum, voici le source d'un serveur écoutant sur un port particulier et ne fait qu'écrire les lignes reçues :

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
/**
 * 
 */
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;
 
/**
 * @author millie
 * 
 */
 
class Client extends Thread {
 
	/**
         * le socket du client
         */
	private Socket socket;
 
	/**
         * Une chaîne indiquant des informations concernant le client
         */
	private String host;
 
	/**
         * Constructeur par défaut.
         * 
         * @param s
         */
	public Client(Socket s) {
		this.socket = s;
		this.host = s.getInetAddress().getHostName();
	}
 
	public void run() {
		InputStream iStream = null;
 
		try {
			iStream = socket.getInputStream();
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					iStream)); // pour lire, ligne par ligne
			String g = "";
			while (true) {
				g = reader.readLine(); // reception d'une ligne		
				if(g==null)
					break;
 
				Logger.getLogger(host).log(Level.INFO, host + " " + g); // écriture
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
 
		try {
			// on ferme tous les flux
			iStream.close();
			socket.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
 
	}
 
}
 
public class Developpez {
 
	/**
         * @param args
         */
	public static void main(String[] args) {
		ServerSocket serverSocket = null;
		try {
			serverSocket = new ServerSocket(1000); // écoute sur le port 1000
			while (true) {
				Socket s = serverSocket.accept(); // un nouveau client s'est
				// connecté
				Client c = new Client(s);
				c.start(); // on démarre le thread
			}
 
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			if (serverSocket != null) // on ferme le server socket
				serverSocket.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
 
	}
 
}