第10章 网络编程 03_TCP_Socket_2

来源:互联网 发布:入侵centos教程 编辑:程序博客网 时间:2024/06/03 02:26

鱼欲遇雨:每日都学习一点,持之以恒,天道酬勤!不能用电脑时,提前补上!(2012.9.5)



几个示例的小程序

TestServer.java/TestClient.java

// TestServer.java/*   范例名称:简单的Server/Client程序 *   源文件名称:TestServer.java/TestClient.java *   要点: *       1.  Java Socket编程步骤; *       2.  Socket/ServerSocket类的用法; *       3.  通过Socket对象可以获得通信对方Socket的信息 */import java.net.*;import java.io.*;public class TestServer {public static void main(String args[]) {try{ServerSocket s = new ServerSocket(8888);while(true) {Socket s1 = s.accept();OutputStream os = s1.getOutputStream();DataOutputStream dos = new DataOutputStream(os);dos.writeUTF("Hello," + s1.getInetAddress() +" port #" + s1.getPort() + " bey-bey!" );dos.close();s1.close();}}catch (IOException e){e.printStackTrace();System.out.println("程序运行错误" + e);}}}//TestClient.java/*   范例名称:简单的Server/Client程序 *   源文件名称:TestServer.java/TestClient.java *   要点: *       1.  Java Socket编程步骤; *       2.  Socket/ServerSocket类的用法; *       3.  通过Socket对象可以获得通信对方Socket的信息 */import java.net.*;import java.io.*;public class TestClient {public static void main(String args[]) {try{Socket s1 = new Socket("127.0.0.1", 8888);InputStream is = s1.getInputStream();DataInputStream dis = new DataInputStream(is);System.out.println(dis.readUTF());dis.close();s1.close();}catch (ConnectException connExc){connExc.printStackTrace();System.out.println("服务器连接失败!");}catch( IOException e) {e.printStackTrace();}}}

TestSockServer.java/TestSockClient.java

// TestSockServer.javaimport java.net.*;import java.io.*;public class TestSockServer {public static void main(String args[]) {InputStream in = null;OutputStream out = null;try{ServerSocket ss = new ServerSocket(5888);Socket socket = ss.accept();in = socket.getInputStream();out = socket.getOutputStream();DataInputStream dis = new DataInputStream(in);DataOutputStream dos = new DataOutputStream(out);String s = null;if((s = dis.readUTF()) != null) {System.out.println(s);System.out.println("from: " + socket.getInetAddress());System.out.println("port: " + socket.getPort());}dos.writeUTF("hi, hello");dos.close();dis.close();socket.close();}catch(ConnectException e) {e.printStackTrace();}catch (IOException e){e.printStackTrace();}}}// TestSockClient.javaimport java.net.*;import java.io.*;public class TestSockClient {public static void main(String args[]) {try{Socket socket = new Socket("localhost", 5888);InputStream in = null;OutputStream out = null;in = socket.getInputStream();out = socket.getOutputStream();DataInputStream dis = new DataInputStream(in);DataOutputStream dos = new DataOutputStream(out);dos.writeUTF("hey");String s = null;if((s = dis.readUTF()) != null) {System.out.println(s);}dos.close();dis.close();socket.close();}catch (UnknownHostException e){e.printStackTrace();}catch(IOException e) {e.printStackTrace();}}}


原创粉丝点击