s-day11-TCP的客户端的实现
This commit is contained in:
@@ -0,0 +1,48 @@
|
|||||||
|
package com.inmind.tcp03;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.OutputStream;
|
||||||
|
import java.net.Socket;
|
||||||
|
|
||||||
|
/*
|
||||||
|
TCP的客户端的实现
|
||||||
|
在java中使用一个类Socket表示客户端
|
||||||
|
构造方法:
|
||||||
|
Socket(String host, int port) 创建流客户端并将其连接到指定主机(IP地址)上的指定端口号。
|
||||||
|
参数一host:要请求服务的服务器的ip地址
|
||||||
|
参数二port:要请求服务的服务器上的软件端口号
|
||||||
|
|
||||||
|
常用方法:
|
||||||
|
void close() 关闭此套接字。
|
||||||
|
InetAddress getInetAddress() 返回套接字所连接的地址。
|
||||||
|
InputStream getInputStream() 返回此套接字的输入流.(接收响应数据的)
|
||||||
|
OutputStream getOutputStream() 返回此套接字的输出流。 (发送请求)
|
||||||
|
void shutdownOutput() 禁用此套接字的输出流 (设置了一个发送请求数据的结束标记)
|
||||||
|
|
||||||
|
客户端的实现步骤(对照IO图说明API的作用):
|
||||||
|
1.创建客户端对象
|
||||||
|
2.获取字节输出流发送请求数据
|
||||||
|
3.获取字节输入流接收响应数据
|
||||||
|
4.释放资源
|
||||||
|
*/
|
||||||
|
public class TcpClientDemo06 {
|
||||||
|
public static void main(String[] args) throws Exception {
|
||||||
|
//1.创建客户端对象192.168.23.107
|
||||||
|
Socket socket = new Socket("127.0.0.1", 10024);
|
||||||
|
//2.获取字节输出流发送请求数据
|
||||||
|
OutputStream os = socket.getOutputStream();
|
||||||
|
os.write("淘宝的官网".getBytes());
|
||||||
|
//告诉服务器,请求数据结束标记
|
||||||
|
socket.shutdownOutput();
|
||||||
|
//3.获取字节输入流接收响应数据
|
||||||
|
InputStream is = socket.getInputStream();
|
||||||
|
//一次读取一个字节数组
|
||||||
|
byte[] bytes = new byte[1024];
|
||||||
|
int len;
|
||||||
|
while ((len = is.read(bytes)) != -1) {
|
||||||
|
System.out.println(new String(bytes,0,len));
|
||||||
|
}
|
||||||
|
//4.释放资源
|
||||||
|
socket.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user