JAVA实现TCP协议传输

JAVA为客户端提供了Socket类,为服务器端提供了SeverSocket类

发送数据

Javatcp发送文件丢包 java发送tcp请求_.net

package cn.tcp;

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

public class TcpsendDemo {
    public static void main(String[] args) throws IOException {
        //Socket(InetAddress address, int port)
        //创建流套接字并将其连接到指定IP地址的指定端口号。
        Socket s=new Socket(InetAddress.getByName("192.168.1.215"),10086);
        //Socket s=new Socket("192.168.1.215",10086);也可以
        //获取输出流写数据
        OutputStream os = s.getOutputStream();
        os.write("爷来辣".getBytes());
        s.close();
    }
}

接受数据

Javatcp发送文件丢包 java发送tcp请求_.net_02

package cn.tcp;

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

public class TcpreceviDemo {
    public static void main(String[] args) throws IOException {
        //ServerSocket(int port)
        //创建绑定到指定端口的服务器套接字。
        ServerSocket s= new ServerSocket(10086);
        //accept()
        //侦听要连接到此套接字并接受它。
        Socket k =s.accept();
        //获取输入流,读数据并输出
        InputStream is = k.getInputStream();
        byte[] bye=new byte[1024];
        int len=is.read(bye);
        String data=new String(bye,0,len);
        System.out.println(data);
        k.close();
        s.close();
    }
}