Java语言-73:TCP编程-客户端和服务器端加入反馈

1、客户端:

客户端步骤:

1)创建Socket对象

2)获取通道内的输出流

3)接收客户端反馈

4)显示数据

5)关闭资源

简单举例:

package Socket_TCP;

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

public class Client_return {
public static void main(String[] args) throws Exception {
// 1)创建Socket对象
Socket s = new Socket("10.88.29.231", 10011);
// 2)获取通道内的输出流
OutputStream ops = s.getOutputStream();
ops.write("wonderful".getBytes());
// 3)接收客户端反馈
InputStream ips = s.getInputStream();
byte[] bytes = new byte[1024];
int len = ips.read(bytes);
// 4)显示数据
String Client = new String(bytes, 0, len);
System.out.println(Client);
// 5)关闭资源
s.close();
}

}

2、客户端

客户端开发步骤:

1)创建ServerSocket对象

2)监听客户端连接

3)获取通道内的流

        获取ip

        定义存储空间

        定义长度

        获取数据      

4)输出到控制台

5)反馈给客户端

 6)释放资源

简单举例:

package Socket_TCP;

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

public class Server_return {
public static void main(String[] args) throws Exception {
// 1)创建ServerSocket对象
@SuppressWarnings("resource")
ServerSocket ss = new ServerSocket(10011);
// 2)监听客户端连接
Socket s = ss.accept();
// 3)获取通道内的流
InputStream ips = s.getInputStream();
// 获取ip
String ip = s.getInetAddress().getHostAddress();
// 定义存储空间
byte[] bytes = new byte[1024];
// 定义长度
int len = ips.read(bytes);
// 获取数据
String data = new String(bytes, 0, len);
// 4)输出到控制台
System.out.println("from" + ip + "data is:" + data);
// 5)反馈给客户端
// 获取通道内的输出流
OutputStream ops = s.getOutputStream();
ops.write("已写完".getBytes());
// 6)释放资源
s.close();
}
}

猜你喜欢

转载自blog.csdn.net/qq_41833394/article/details/80616217