本帖最后由 HM何伟 于 2013-4-25 00:13 编辑
为什么会报连接时间超时啊??求解- 客户端:
- package cn.wy.socket;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.Socket;
- public class Tcp_Cleint_ReturnDemo {
- /*
- * 需求:客户端往服务器发送数据,服务器给一个反馈。
- */
- public static void main(String[] args) throws IOException {
- // 创建客户端Socket对象,并指定IP地址,固定接收的端口。
- Socket s = new Socket("192.168.1.162", 10000);
- // 获取输出流,写入数据,创建流通道
- OutputStream os = s.getOutputStream();
- os.write("服务器给一个反应那".getBytes());
- // 获取输入流,读取数据
- InputStream is = s.getInputStream();
- byte[] bys = new byte[1024];
- int len = is.read(bys);// 阻塞
- String server = new String(bys, 0, len);
- System.out.println("服务器反回" + server);
- // 关闭资源
- s.close();
- }
- }
- 服务器:
- package cn.wy.socket;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.ServerSocket;
- import java.net.Socket;
- /*接收数据给出反馈。
- * */
- public class Tcp_server_ReturnDemo {
- public static void main(String[] args) throws IOException {
- //创建服务器Socket对象,并指端口
- ServerSocket ss=new ServerSocket(10000);
- //监听连接
- Socket s=ss.accept();
- //获取输入流
- InputStream is=s.getInputStream();
- byte[] bys=new byte[1024];
- int len=is.read(bys);//阻塞
- String client=new String(bys,0,len);
- System.out.println("客户端"+client);
-
- //获取输出流
- OutputStream os=s.getOutputStream();
- os.write("我一直在啊".getBytes());
- //关闭资源
- s.close();
- ss.close();
-
- }
- }
复制代码 |
|