Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java.net.socket

作者:偶然\寥寂り   发布日期:2026-06-17   浏览:103

import java.net.*;
import java.io.*;

public class SocketExample {
    public static void main(String[] args) {
        // 定义服务器的地址和端口
        String hostname = "127.0.0.1";
        int port = 1234;

        try {
            // 创建一个Socket对象,连接到指定的服务器和端口
            Socket socket = new Socket(hostname, port);

            // 获取输出流,用于向服务器发送数据
            OutputStream outputStream = socket.getOutputStream();
            PrintWriter writer = new PrintWriter(outputStream, true);
            writer.println("Hello from client");

            // 获取输入流,用于接收服务器返回的数据
            InputStream inputStream = socket.getInputStream();
            BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
            String response = reader.readLine();
            System.out.println("Server response: " + response);

            // 关闭资源
            writer.close();
            reader.close();
            socket.close();
        } catch (UnknownHostException e) {
            System.err.println("Don't know about host " + hostname);
            e.printStackTrace();
        } catch (IOException e) {
            System.err.println("Couldn't get I/O for the connection to " + hostname);
            e.printStackTrace();
        }
    }
}

解释说明:

  1. 导入必要的包java.net.*java.io.* 是处理网络通信和输入输出流所需的包。
  2. 定义服务器地址和端口:通过 hostnameport 变量指定要连接的服务器地址和端口号。
  3. 创建Socket对象:使用 new Socket(hostname, port) 连接到指定的服务器和端口。
  4. 获取输出流:通过 socket.getOutputStream() 获取输出流,用于向服务器发送数据。PrintWriter 用于方便地写入文本数据。
  5. 获取输入流:通过 socket.getInputStream() 获取输入流,用于接收服务器返回的数据。BufferedReader 用于方便地读取文本数据。
  6. 关闭资源:确保在操作完成后关闭所有打开的流和套接字,以避免资源泄漏。
  7. 异常处理:捕获并处理可能出现的异常,如 UnknownHostExceptionIOException

上一篇:java中什么是类

下一篇:java excelwriter

大家都在看

java url decode

java判断是windows还是linux

java原始数据类型

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java常用的设计模式有哪些

java list 查找

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站