tcp需要先建立连接
客户端:
package itecat.zpf.nettcp;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class TcpClient2 {
public static void main(String[] args) throws IOException {
System.out.println("客户端启动");
// 实现客户收发
Socket s = new Socket("192.168.81.105", 10005);
// 发送数据
OutputStream out = s.getOutputStream();
out.write("这是客户端向服务端提交的数据".getBytes());
// 读取服务器返回 的数据
InputStream in = s.getInputStream();
byte[] buff = new byte[1024];
int len = in.read(buff);
String text = new String(buff, 0, len);
System.out.println("这是服务端向客户端返回的数据"+text);
s.close();
}
}
服务端:
package itecat.zpf.nettcp;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServer2 {
public static void main(String[] args) throws IOException {
System.out.println("服务端已经启动");
// 创建服务器端Soceket
ServerSocket ss = new ServerSocket(10005);
// 获取客户端对象
Socket s = ss.accept();
String ip = s.getInetAddress().getHostAddress();
System.out.println(ip+".......已经连接");
InputStream in = s.getInputStream();
byte[] buff = new byte[1024];
int len = in.read(buff);
String text = new String(buff, 0, len);
System.out.println("已经获取到客户端发来的数据"+text);
// 给客户端回馈数据
OutputStream out = s.getOutputStream();
out.write("这是我给你们客户端的".getBytes());
// 关闭客户端
s.close();
// 关闭服务端
// ss.close();
}
}