不畏浮云遮望眼,只缘身在最高层
分类: Java
2013-02-14 11:40:21
/*
*
* 演示tcp的传输的客户端和服务端的互访
*
* 需求:客户端给服务端发送数据,服务端收到后,给客户端反馈信息
*
* 客户端
* 1.建立socket服务,指定连接主机和端口
* 2.获取socket流中的输出流,将数据写到该流中,通过网络发送到服务端
* 3.获取socket流中的输入流,将服务端反馈的数据获取到,并打印
* 4.关闭客户端资源
*
*
* *
*/
import java.net.*;
import java.io.*;
class TCPClient0
{
public static void main(String [] args) throws Exception
{
//1.建立socket服务,连接到指定主机和端口
Socket s1=new Socket("192.168.1.100",9898);
OutputStream out1=s1.getOutputStream();
out1.write("你好,服务器,我们握手吧".getBytes());
//OutStream 输出流字节,是写给服务器的数据
InputStream in0=s1.getInputStream();//获得服务器的数据
byte[] buff=new byte[1024];//数据缓存
int dat=in0.read(buff);
String dati=new String(buff,0,dat);
System.out.println(dati);
s1.close();//关闭客户端
}
}
class TCPServer0
{
public static void main(String [] args) throws Exception
{
ServerSocket ss1=new ServerSocket(9898);
//监听客户端,是否有数据过来了
Socket sr1=ss1.accept();
//
String ipr2=sr1.getInetAddress().getHostAddress();
System.out.println(ipr2+"...is connected");
InputStream inr0=sr1.getInputStream();
byte[] bufr=new byte[1024];
int lr=inr0.read(bufr);
String datr=new String(bufr,0,lr);
System.out.println(datr);
OutputStream outr=sr1.getOutputStream();
Thread.sleep(500);
outr.write("客户端,哥们你好".getBytes());
// sr1.close();
ss1.close();
}
}