sprite123
发贴: 2
积分: 0
|
于 2009-01-14 16:54
Server端:
import java.net.*; import java.io.*;
public class TestServer { public static void main(String[] args) { try { InputStream in = null; OutputStream out = null; ServerSocket ss = new ServerSocket(5555); while(true) { Socket s1 = ss.accept(); System.out.println(s1.getPort() + " a Client!"); in = s1.getInputStream(); out = s1.getOutputStream(); InputStreamReader isr = new InputStreamReader(in); BufferedReader isread = new BufferedReader(isr); OutputStreamWriter osr = new OutputStreamWriter(out); PrintWriter pw = new PrintWriter(osr); InputStreamReader str = new InputStreamReader(System.in); BufferedReader str1 = new BufferedReader(str); //建立2个管道
System.out.println("Client : " + isread.readLine()); //从client读入一行 String line = str1.readLine(); //从命令行读一行 while(!(line.equals("bye"))) //循环,读入的不是bye就继续通信 { pw.println(line);
System.out.println("Server : " + line); System.out.println("Client : " + isread.readLine()); line = str1.readLine(); } pw.close(); isread.close(); str1.close(); s1.close(); } } catch(IOException e) {} } }
Client端:
import java.net.*; import java.io.*;
public class TestClient { public static void main(String[] args) { try { InputStream in = null; OutputStream out = null; Socket s1 = new Socket("127.0.0.1",5555);
in = s1.getInputStream(); out = s1.getOutputStream(); InputStreamReader isr = new InputStreamReader(in); BufferedReader isread = new BufferedReader(isr); OutputStreamWriter osr = new OutputStreamWriter(out); PrintWriter pw = new PrintWriter(osr);
InputStreamReader str = new InputStreamReader(System.in); BufferedReader str1 = new BufferedReader(str);
String readline = str1.readLine(); while(!(readline.equals("bye"))) {
pw.println(readline); System.out.println("Client : " + readline); System.out.println("Server : " + isread.readLine()); readline = str1.readLine(); }
isread.close(); pw.close(); s1.close();
} catch(IOException e) {}
} }
为什么运行起来,server端接收不到client传送的数据,但是打bye能停止....
谁能帮我看看错在那里啊
|