1 package MIME;
2 import java.io.*;
3
4 import java.net.*;
5
6 public class TalkClient {
7 public static void main(String args[]) throws Exception {
8 Socket client = new Socket("127.0.0.1", 9093);
9 client.setSoTimeout(3000);
10 Writer writer = new OutputStreamWriter(client.getOutputStream());
11 writer.write("Hello aaa.");
12 InputStream inputStream = client.getInputStream();
13 // BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
14 // StringBuffer sb = new StringBuffer();
15 // while(true){
16 // sb.append(bufferedReader.readLine());
17 // System.out.println(sb.toString());
18 // if(-1==sb.indexOf("end")){
19 // break;
20 // }
21 // }
22 // System.out.println(sb.toString());
23 writer.flush();
24 writer.close();
25 }
26 }
1 package MINE;
2
3 import java.io.BufferedReader;
4 import java.io.IOException;
5 import java.io.InputStream;
6 import java.io.InputStreamReader;
7 import java.io.OutputStreamWriter;
8 import java.io.Writer;
9 import java.net.ServerSocket;
10 import java.net.Socket;
11
12 public class TalkServer {
13
14 public static void main(String args[]) throws IOException {
15 ServerSocket server = new ServerSocket(9093);
16 System.out.println("服务器监听启动!");
17 while (true) {
18 Socket socket = server.accept();
19 new Thread(new Handler(socket)).start();
20 }
21 }
22
23 static class Handler implements Runnable{
24 private Socket socket;
25 public Handler(Socket socket) {
26 this.socket = socket;
27 }
28 public void run() {
29 try {
30 dobiz();
31 } catch (IOException e) {
32 e.printStackTrace();
33 }
34 }
35
36 private void dobiz() throws IOException {
37 InputStream inputStream = socket.getInputStream();
38 InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
39 BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
40 StringBuilder sb = new StringBuilder();
41 while (true) {
42 String line = bufferedReader.readLine();
43 if(line==null){
44 break;
45 }
46 if(-1 != line.indexOf("end")){
47 break;
48 }
49 sb.append(line);
50 }
51 System.out.println("from client: " + sb);
52 Writer writer = new OutputStreamWriter(socket.getOutputStream());
53 writer.write("Hello client.");
54 writer.write("end\n");
55 writer.flush();
56 writer.close();
57 socket.close();
58 }
59
60
61 }
62
63 }