一个完整的Socket例子
2014-07-23 15:16
399 查看
以下程序在Jbuilder4下调试成功![下载源程序] 服务端的程序: import java.io.*; import java.net.*; public class SocketServer { ServerSocket ss=null; Socket s=null; DataInputStream inStream=null; DataOutputStream outStream=null; public SocketServer() { try{ init(); } catch(Exception e){ System.out.println(e.toString()); } } void init() throws Exception{ ss=new ServerSocket(765); s.setSoTimeout(3000); } void waitForClient(){ try{ s=ss.accept(); inStream=new DataInputStream(s.getInputStream()); outStream=new DataOutputStream(s.getOutputStream()); outStream.writeUTF("1"); s.setSoTimeout(3000); waitData(); } catch(Exception e){ System.out.println(e.toString()); } } void waitData(){ while(true){ try{ String str=inStream.readUTF(); System.out.println("Server accept: "+str); int nu=Integer.parseInt(str)+1; if(nu>20){ System.out.println("Send end!"); break; } else{ str=Integer.toString(nu); outStream.writeUTF(str); } } catch(Exception e){ System.out.println(e.toString()); break; } } } public static void main(String[] args) { SocketServer socketServer1 = new SocketServer(); socketServer1.waitForClient(); } } 客户端的程序: import java.net.*; import java.io.*; public class SocketClient{ Socket s=null; DataInputStream inStream=null; DataOutputStream outStream=null; public SocketClient() { try{ init(); waitData(); } catch(Exception e){ System.out.println(e.toString()); } } void init() throws Exception{ s=new Socket("192.168.0.32",765); //把这里的IP改成你运行SocketServer.class的IP inStream=new DataInputStream(s.getInputStream()); outStream=new DataOutputStream(s.getOutputStream()); s.setSoTimeout(3000); } void waitData(){ while(true){ try{ String str=inStream.readUTF(); System.out.println("Client accept: "+str); str=Integer.toString(Integer.parseInt(str)+1); outStream.writeUTF(str); } catch(Exception e){ System.out.println(e.toString()); break; } } } public static void main(String[] args) { SocketClient socketClient1 = new SocketClient(); } } |
相关文章推荐
- 一个完整的 epoll + socket 的例子
- 一个完整的socket.io通信群聊和单聊的例子
- java中的基于套结字(socket)的通信 一. 一个双人单方向通信例子
- 非阻塞方式下Socket读取数据的一个例子
- 使用Hibernate的一个完整例子
- .net C# 跨越线程调用窗体上的控件一个完整的例子
- 用java写的一个利用socket通信的C/S小例子
- LINUX下的一个SOCKET编程的例子
- 非阻塞方式下Socket读取数据的一个例子
- WF工作流的一个完整例子
- 关于socket通信的一个例子!
- 非阻塞方式下Socket读取数据的一个例子
- 一个完整的读Socket中字节的方法
- 使用Hibernate的一个完整例子
- 一个关于TableViewer较完整的例子
- 使用Hibernate的一个完整例子
- 使用Hibernate的一个完整例子
- 使用Hibernate的一个完整例子
- 一个Socket编程的例子
- 一个数据库+xsl实现的完整的无级折叠的例子