java tcp如何使用
时间: 2024-11-12 16:46:07 浏览: 6
java tcp编程
Java TCP(Transmission Control Protocol)用于基于TCP/IP协议的应用层通信,常用于可靠的数据传输。以下是Java中使用TCP的基本步骤:
1. **导入必要的包**:
```java
import java.io.*;
import java.net.*;
```
2. **创建ServerSocket对象**:
在服务器端,你需要创建一个`ServerSocket`实例监听特定的端口:
```java
ServerSocket serverSocket = new ServerSocket(port);
```
3. **绑定并监听**:
设置`ServerSocket`的本地地址和端口,并开始监听连接:
```java
serverSocket.bind(new InetSocketAddress(host, port));
```
4. **接收客户端连接**:
当有客户端尝试连接时,调用`accept()`方法创建一个新的`Socket`连接,并返回一个`ServerSocketChannel`:
```java
Socket socket = serverSocket.accept();
```
5. **建立输入输出流**:
从`Socket`获取输入和输出流,分别对应于读取和发送数据:
```java
InputStream input = socket.getInputStream();
OutputStream output = socket.getOutputStream();
```
6. **数据交换**:
在输入流上读取数据,在输出流上写入数据。例如,读取一行文本,然后写回服务器:
```java
byte[] buffer = new byte[1024];
String message = readLine(input); // 读取直到换行符
output.write(message.getBytes());
```
7. **关闭连接**:
完成交互后,记得关闭所有连接的资源:
```java
socket.close();
serverSocket.close();
```
8. **辅助函数**:
这里有一个简单的`readLine()`函数示例,用于逐行读取数据:
```java
private static String readLine(InputStream in) throws IOException {
StringBuilder sb = new StringBuilder();
int b;
while ((b = in.read()) != -1) {
if (b == '\n') {
break;
}
sb.append((char) b);
}
return sb.toString();
}
```
阅读全文