编程语言
首页 > 编程语言> > JAVA------TCP发送数据和接收数据

JAVA------TCP发送数据和接收数据

作者:互联网

TCP发送数据和接收数据

1.TCP通信原理


2.TCP发送数据的步骤:

  1. 创建客户端的Socket对象(Socket)
  2. 获取输出流,写数据
  3. 释放资源

看代码演示:

发送数据:

package TCP;

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;

public class SendDemo {
	public static void main(String[] args) throws IOException{
		//创建客户端的Socket对象
		//Socket (InetAddress adress,int port)创建流套接字并将其连接到指定IP地址的指定端口号
//		Socket s=new Socket(InetAddress.getByName("192.168.224.1"), 10000);
		//Socket (String host,int port)创建流套接字并将其连接到指定主机的指定端口号
		Socket s=new Socket("192.168.224.1", 10000);
		
		//获取输出流,写数据
		//OutputStream getOutputStream();返回此套接字的输出流
		OutputStream os=s.getOutputStream();
		os.write("hello,tcp".getBytes());
		
		//释放资源
		s.close();
		
	}

}

因为TCP是可靠传输,必须有三次握手,所以只有运行了接收数据程序时,发送数据程序才可正常使用。这里192.168.223.1是本机IP地址。


3.TCP接收数据的步骤:

  1. 创建客户端的Socket对象(SevereSocket)
  2. 获取输入流,读数据,并把数据显示在控制台
  3. 释放资源

看代码演示:

package TCP;

import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class ReceiveDemo {
	public static void main(String[] args) throws IOException {
		//创建客户端的Socket对象(SevereSocket)
		//ServerSocket (int port)创建绑定到指定端口的服务器套接字
		ServerSocket ss=new ServerSocket(10000);	
		
		//Socket accept()侦听要连接到此套接字并接受他
		Socket s=ss.accept();
		
		//获取输入流,读数据,并把数据显示在控制台
		InputStream is=s.getInputStream();
		byte[] bys=new byte[1024];
		int len=is.read(bys);
		String data=new String(bys,0,len);
		System.out.println("数据是:"+data);
			
		//释放资源
		s.close();
		ss.close();	
	}

}

最终接收端输出:“数据是:hello,tcp”

标签:java,Socket,TCP,------,ServerSocket,发送数据,import,接收数据
来源: https://blog.csdn.net/weixin_45102820/article/details/113781072