007socket基本使用

本文介绍了一个使用Java进行网络编程的具体实例,包括客户端和服务端的实现。客户端通过Socket连接到本地服务器,发送并接收消息,而服务端则监听指定端口,接受连接请求,并对每个连接创建新的线程进行处理。此外,还涉及了文件读取和字符串匹配的逻辑。

package sock;

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;

public class MySock7 {
    public static void main(String[] args) throws Exception {
        Socket socket = new Socket("127.0.0.1", 32112
        );

        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
        BufferedReader bufferedReader1 = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        PrintWriter printWriter = new PrintWriter(socket.getOutputStream(), true);
        String line = null;
        for (int i = 0; i < 3; i++) {
            String readLine = bufferedReader.readLine();
            if (readLine == null) {
                break;

            }

            printWriter.println(readLine);
            String msg = bufferedReader1.readLine();

            System.out.println(msg);
            if (msg.contains("欢迎")) {
                break;
            }
        }

        bufferedReader.close();
        socket.close();
    }
}

class MySerd7 {
    public static void main(String[] args) throws Exception {
        ServerSocket serverSocket = new ServerSocket(32112);
        while (true) {
            Socket accept = serverSocket.accept();
            new Thread(new MySerThead(accept)).start();
        }
    }
}


class MySerThead implements Runnable {
    Socket socket;

    public MySerThead(Socket socket) {
        this.socket = socket;
    }

    @Override
    public void run() {
        String ip = socket.getInetAddress().getHostAddress();
        try {
//            System.out.println("ip = " + ip);
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream()
            ));

            String name=null;

            PrintWriter printWriter = new PrintWriter(socket.getOutputStream(), true);
            String line =null;
            boolean flag = false;
            for (int i = 0; i < 3; i++) {
                BufferedReader bufferedReader1 = new BufferedReader(new FileReader("d:/in.txt"));

                name = bufferedReader.readLine();//证明是一个对象。
                if (name == null) {
                    break;
                }
                System.out.println("name = " + name);
                while ((line = bufferedReader1.readLine()) != null) {
                    System.out.println("line = " + line);
                    if (line.equals(name)) {
                        System.out.println(name+"登陆成功");
                        printWriter.println(name+":欢迎你的到来!");
                        flag = true;

                        break;

                    }

                }
                if (!flag) {
                    System.out.println(name+":尝试登陆");
                    printWriter.println(name+":用户名不存在");
                }
                bufferedReader1.close();

            }
//            if(!flag)
//            printWriter.println(name+":你搞砸了!");
            socket.close();



        } catch (IOException e) {
            e.printStackTrace();
            throw new RuntimeException(ip+":you lose");
        } finally {
        }
    }
}
数据集介绍:垃圾分类检测数据集 一、基础信息 数据集名称:垃圾分类检测数据集 图片数量: 训练集:2,817张图片 验证集:621张图片 测试集:317张图片 总计:3,755张图片 分类类别: - 金属:常见的金属垃圾材料。 - 纸板:纸板类垃圾,如包装盒等。 - 塑料:塑料类垃圾,如瓶子、容器等。 标注格式: YOLO格式,包含边界框和类别标签,适用于目标检测任务。 数据格式:图片来源于实际场景,格式为常见图像格式(如JPEG/PNG)。 二、适用场景 智能垃圾回收系统开发: 数据集支持目标检测任务,帮助构建能够自动识别和分类垃圾材料的AI模型,用于自动化废物分类和回收系统。 环境监测与废物管理: 集成至监控系统或机器人中,实时检测垃圾并分类,提升废物处理效率和环保水平。 学术研究与教育: 支持计算机视觉与环保领域的交叉研究,用于教学、实验和论文发表。 三、数据集优势 类别覆盖全面: 包含三种常见垃圾材料类别,覆盖日常生活中主要的可回收物类型,具有实际应用价值。 标注精准可靠: 采用YOLO标注格式,边界框定位精确,类别标签准确,便于模型直接训练和使用。 数据量适中合理: 训练集、验证集和测试集分布均衡,提供足够样本用于模型学习和评估。 任务适配性强: 标注兼容主流深度学习框架(如YOLO等),可直接用于目标检测任务,支持垃圾检测相关应用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值