当前位置: 首页 > news >正文

第十六章:IO流 (java.io包中)

一、理解

1. 简单而言:流就是内存与存储设备之间传输数据的通道、管道。
2. 分类:
(1) 按方向 ( JVM 虚拟机为参照物 ) 【重点】
输入流:将 < 存储设备 > 中的内容读入到 < 内存 > 中。
输出流:将 < 内存 > 中的内容写入到 < 存储设备 > 中。
(2) 按单位:
字节流:以字节为单位,可以操作所有类型的文件。
字符流:以字符为单位,只能操作文本类型的文件。
(3) 按功能:
节点流:具有基本的读写功能。
过滤流:在节点流的基础上,增加新的功能。

二、字节流

1. 父类:字节流的父类 ( 抽象类 )
(1) InputStream :字节输入流
对应的操作为读操作
功能方法: read 方法
(2) OutputStream: 字节输出流
对应的操作为写操作
功能方法: write 方法
2. 字节节点流
(1) FileOutputStream :字节节点输出流 、文件字节输出流
构造方法:
FileOutputStream fos = new FileOutputStream("D:\\test56/a.txt");
参数:代表操作文件的路径,如果指定的文件夹不存在,则运行报错,错误信息为:
java.io.FileNotFoundException: D:\test5\a.txt ( 系统找不到指定的路径。 ) ;如果指定的
文件不存在,系统自动创建
绝对路径:盘符: \\ 文件夹 \\ 文件
相对路径:文件夹 / 文件,默认在当前的项目中查找对应的文件夹内容
功能方法 :
write(int n) :将单个字节写入文件中
close() :关闭流
(2) FileInputStream :文件字节输入流
构造方法:
FileInputStream fis = new FileInputStream("file/c.txt");
参数说明:参数代表操作路径,如果指定的文件不存在,则运行报错,错误信息为:
java.io.FileNotFoundException: file\c.txt ( 系统找不到指定的文件。 )
功能方法:
int read() :一次性读取一个字节内容,将读取的内容作为返回值返回,达到文件尾部时,返回 -1
close() :关闭流,释放资源
3. 字节过滤流
(1) 过滤流: BufferedOutputStream/BufferedInputStream
缓冲流 , 提高 IO 效率,减少访问磁盘的次数;
数据存储在缓冲区中, flush 是将缓存区的内容写入文件中,也可以直接 close
public class TestFileCopyBuffered {
        public static void main(String[] args) throws IOException {
                // 1. 创建文件字节输入流+ 输出流对象
                // (1) 创建文件节点流对象
                FileInputStream fis = new FileInputStream("D:\\test\\ph.mp4");
                // (2) 创建过滤流
                BufferedInputStream bis = new BufferedInputStream(fis);
                // 写文件
                FileOutputStream fos = new FileOutputStream("file/ph_copy.mp4");
                BufferedOutputStream bos = new BufferedOutputStream(fos);
                // 2. 边读边写
                while(true){
                        int n=bis.read();
                        if(n==-1) break;
                        bos.write(n);
                }
                // 3. 关闭流。释放资源
                bis.close();
                bos.close();
        }
}
(1) 过滤流: ObjectOutputStream/ObjectInputStream
增强了缓冲区功能
增强了读写 8 种基本数据类型和字符串功能
增强了读写对象的功能 :
        readObject() 从流中读取一个对象
        writeObject():写入对象
对象在流上进行传输的过程称为对象序列化。
对象序列化的要求:[重点]
        参与对象序列化的对象对应的类,必须实现java.io.Serializable接口
        transient修饰的属性,不参与对象序列化
        对象序列化达到文件尾部的标识:
        如果运行时抛出 java.io.EOFException ,代表读取的文件达到尾部
        对象序列化的细节:
        如果对象的属性,是自定义类型的对象时,则该对象也必须是可序列化的
        如果对集合进行对象序列化,必须保证该集合中的所有元素是可序列化的
package testio;
import java.io.*;
public class TestObjectOutputStream {
        public static void main(String[] args) throws IOException, ClassNotFoundException
        {
                // 将对象写入文件中
                Student s = new Student("魏语石",23,100.0);
                // 1. 创建文件字节输出流对象 - 》基础流
                FileOutputStream fos = new FileOutputStream("file/stu.txt");
                // 2. 包装过滤流
                ObjectOutputStream oos = new ObjectOutputStream(fos);
                // 3. 写对象
                oos.writeObject(s);
                // 4. 关闭流,释放资源
                oos.close();
                // 读对象
                FileInputStream fis = new FileInputStream("file/stu.txt");
                ObjectInputStream ois = new ObjectInputStream(fis);
                Object o=ois.readObject();
                System.out.println(o);
                ois.close();
        }
}
package testio;
import java.io.*;
public class TestObjectOutputStream {
        public static void main(String[] args) throws IOException, ClassNotFoundException
        {
                // 将对象写入文件中
                Student s = new Student("魏语石",23,100.0);
                // 1. 创建文件字节输出流对象 - 》基础流
                FileOutputStream fos = new FileOutputStream("file/stu.txt");
                // 2. 包装过滤流
                ObjectOutputStream oos = new ObjectOutputStream(fos);
                // 3. 写对象
                oos.writeObject(s);
                // 4. 关闭流,释放资源
                oos.close();
                // 读对象
                FileInputStream fis = new FileInputStream("file/stu.txt");
                ObjectInputStream ois = new ObjectInputStream(fis);
                Object o=ois.readObject();System.out.println(o);
                ois.close();
        }
}
package testio;
import java.io.*;
public class TestObjectOutputStream {
        public static void main(String[] args) throws IOException, ClassNotFoundException
        {
                // 将对象写入文件中
                Student s = new Student("魏语石",23,100.0);
                // 1. 创建文件字节输出流对象 - 》基础流
                FileOutputStream fos = new FileOutputStream("file/stu.txt");
                // 2. 包装过滤流
                ObjectOutputStream oos = new ObjectOutputStream(fos);
                // 3. 写对象
                oos.writeObject(s);
                // 4. 关闭流,释放资源
                oos.close();
                // 读对象
                FileInputStream fis = new FileInputStream("file/stu.txt");
                ObjectInputStream ois = new ObjectInputStream(fis);
                Object o=ois.readObject();
                System.out.println(o);
                ois.close();
        }
}
package testio;
import java.io.Serializable;
class Address implements Serializable{}
public class Student implements Serializable {
        private String name;
        private transient Integer age;
        private Double score;
        private Address a = new Address();
        public Student() { }
        public Student(String name, Integer age, Double score) {
                this.name = name;
                this.age = age;
                this.score = score;
        }
        public String getName() {
                return name;
        }
        public void setName(String name) {
                this.name = name;
        }
        public Integer getAge() {
                return age;
        }
        public void setAge(Integer age) {
                this.age = age;
        }
        public Double getScore() {
                return score;
        }
        public void setScore(Double score) {
                this.score = score;
        }
        @Override
        public String toString() {
                return "Student{" +
                        "name='" + name + '\'' +
                        ", age=" + age +
                        ", score=" + score +
                        '}';
        }
}

三、字符流

1. 字符流的父类 ( 抽象类 )
Reader :字符输入流
对应的操作为读操作
功能方法: read 方法
Writer: 字符输出流
对应的操作为写操作
功能方法: write 方法
2. 文件字符流
(1) FileWriter 文件字符输出流,继承 Writer 中的方法:
        public void write(int n):将单个字符写入到文件中
(2) FileReader 文件字符输入流,继承 Reader 中的方法:
        public int read():一次读取一个字符的内容 
3. 字符过滤流
(1) BufferedReader
        功能方法,readLine() :一次性读取一行内容,返回内容为 String ,读取达到尾部,返回 -1
(2) PrintWriter
        println(参数 );
4. 桥转换流
InputStreamReader/OutputStreamWriter: 桥转换流;设置 编解码格式
package testio2;
import java.io.*;
// 桥转换流 : ctr+A -> ctr+x -> 设置格式 -> ctr+v ->ctr+s
public class TestInputStreamReader {
        public static void main(String[] args) throws IOException {
                // 1. 创建文件字节输入流对象
                FileInputStream fis = new FileInputStream("file/k.txt");
                // 2. 创建桥转换流对象,设置编解码格式
                InputStreamReader isr = new InputStreamReader(fis,"GBK");
                // 3. 创建过滤流
                BufferedReader br = new BufferedReader(isr);
                // 4. 读操作
                while(true){
                String n= br.readLine();
                if(n==null) break;
                System.out.println(n);
                }
                // 5. 关闭流
                br.close();
        }
}
package testio2;
import java.io.*;
// 桥转换流 : ctr+A -> ctr+x -> 设置格式 -> ctr+v ->ctr+s
public class TestOutputStreamWriter {
        public static void main(String[] args) {
                PrintWriter pw = null;
                try {
                        FileOutputStream fos = new FileOutputStream("file/my.txt");
                        OutputStreamWriter osw = new OutputStreamWriter(fos, "GBK");
                        pw = new PrintWriter(osw);
                        pw.println("嘻嘻");
                        pw.println("哈哈");
                        pw.print("呵呵");
                }catch (IOException e){
                        e.printStackTrace();
                }finally {
                        if(pw !=null) {
                                pw.close();
                        }
                }
        }
}

四、File

1. IO 流:对文件中的内容进行操作。 File 类:对文件自身进行操作,例如:删除文件,文件重新命名等。
2. 操作:
public class TestFile {
        public static void main(String[] args) throws IOException {
                File file = new File("file/hh.txt");
                /*System.out.println(file.exists());
                file.createNewFile();*/
                if(file.exists()){
                        System.out.println("文件存在,则直接使用...");
                        FileInputStream fis = new FileInputStream(file);
                }else{
                        System.out.println("文件不存在,创建新的文件....");
                        file.createNewFile();
                }
        }
}

相关文章:

第十六章:IO流 (java.io包中)

一、理解 1. 简单而言&#xff1a;流就是内存与存储设备之间传输数据的通道、管道。 2. 分类&#xff1a; (1) 按方向 ( 以 JVM 虚拟机为参照物 ) 【重点】 输入流&#xff1a;将 < 存储设备 > 中的内容读入到 < 内存 > 中。 输出流&#xff1a;将 < 内…...

Introduction to NoSQL Systems

What is NoSQL NoSQL database are no-tabular非數據表格 database that store data differently than relational tables 其數據的存儲方式與關係型表格不同 Database that provide a mechanism機制 for data storage retrieval 檢索 that is modelled in means other than …...

【JVM】JVM基础教程(四)

上一章&#xff1a;【JVM】JVM基础教程&#xff08;三&#xff09;-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收&#xff1f; 可以给对象引用赋值null&#xff0c;切断引用 引用计数法 循环引用缺点 查…...

前端实现在线预览excel文件

在前端开发中&#xff0c;经常会遇到需要在线预览各种文件的需求。本文将介绍如何使用前端技术实现在线预览 Excel 文件的功能。 一、基于微软office服务的excel预览 获取要预览的 Excel 文件的 URL&#xff08;例如存储在 OneDrive 或 SharePoint 上的文件&#xff09;。 使…...

Python 写的《桌面时钟》屏保

原代码&#xff1a; # 日历式时钟 # 导入所需的库 # 作者&#xff1a;Hoye # 日期&#xff1a;2024年12月16日 # 功能&#xff1a;显示当前日期、星期、时间&#xff0c;并显示模拟时钟 import tkinter as tk from tkinter import ttk import time import math import sysdef …...

计算机视觉单阶段实例分割实践指南与综述

概述 原文地址&#xff1a;https://towardsdatascience.com/single-stage-instance-segmentation-a-review-1eeb66e0cc49 实例分割是一项具有挑战性的计算机视觉任务&#xff0c;需要预测对象实例及其每像素分割掩码。这使其成为语义分割和目标检测的混合体。 自 Mask R-CNN …...

Axios结合Typescript 二次封装完整详细场景使用案例

Axios 是一个基于 promise 的 HTTP 客户端&#xff0c;用于浏览器和 node.js。二次封装 Axios 主要是为了统一管理 HTTP 请求&#xff0c;例如设置统一的请求前缀、头部、超时时间&#xff0c;统一处理请求和响应的格式&#xff0c;以及错误处理等。 以下是一个使用 TypeScrip…...

C++面试:HTTP1.0/1.1,HTTP2.0,HTPP3.0的区别

1.你对HTTP1.0/1.1&#xff0c;HTTP2.0&#xff0c;HTPP3.0有什么了解&#xff1f; 答&#xff1a;HTTP1.0&#xff1a; ①属于无连接式&#xff0c;每次发送HTTP请求都需要建立TCP连接。 ②会造成发送时的对头阻塞&#xff0c;当上一个请求没有应答&#xff0c;当前的请求就会…...

使用 Docker Compose 部署 Redis 主从与 Sentinel 高可用集群

文章目录 使用 Docker Compose 部署 Redis 主从与 Sentinel 高可用集群Redis 主从架构简介Redis Sentinel 简介配置文件1. 主节点配置 (redis-master.conf)2. 从节点配置 (redis-slave1.conf 和 redis-slave2.conf)redis-slave1.confredis-slave2.conf3. Sentinel 配置 (sentin…...

【Java】4、虚拟机 JVM

目录 Java内存区域详解(重点) JVM垃圾回收详解(重点) 类文件结构详解 类加载过程详解 类加载器详解(重点) 最重要的JVM参数总结 JDK监控和故障处理工具总结 JVM线上问题排查和性能调优案例 参考&#xff1a; JVM 核心技术 32 讲 深入浅出 Java 虚拟机...

Vue3之组合式API详解

Vue 3引入了一种新的API风格——组合式API&#xff08;Composition API&#xff09;&#xff0c;旨在提升组件的逻辑复用性和可维护性。本文将详细阐述Vue 3中的组合式API&#xff0c;包括其定义、特点、使用场景、优势等&#xff0c;并给出具体的示例代码。 一、定义 组合式…...

Flutter编译Module was compiled with an incompatible version of Kotlin错误解决

文章目录 编译报错如下解决方法修复方案 编译报错如下 e: C:/Users/YUAN/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.9.20/e58b4816ac517e9cc5df1db051120c63d4cde669/kotlin-stdlib-1.9 .20.jar!/META-INF/kotlin-stdlib-jdk8.kotlin_module:…...

Uniapp插件如何通过NFC读取多种证卡信息?

nfc读卡uniapp插件&#xff0c;由中软高科进行开发&#xff0c;主要是通过NFC读取居民身份证、港澳台居住证、外国人居住证、护照等证卡的信息。经过多个版本的升级更新&#xff0c;目前性能已趋于稳定&#xff0c;并且读卡速度较之最初版本有了大的提升。 注意事项 测试使用的…...

本地docker镜像改名字

如果你想修改本地 Docker 镜像的名字&#xff0c;可以通过创建该镜像的新标签&#xff08;tag&#xff09;来实现。Docker 中没有直接修改镜像名字的命令&#xff0c;但可以通过重新打标签的方式实现类似的效果。以下是具体步骤&#xff1a; 查看当前镜像&#xff1a; docker…...

VS Code 远程连接 SSH 服务器

文章目录 一、安装 Remote - SSH 扩展并连接远程主机二、免密连接远程主机1. 生成 SSH 密钥对2. 将公钥复制到远程服务器3. 配置 SSH 客服端4. 连接测试 随着技术的不断迭代更新&#xff0c;在 Linux 系统中使用 Vim、nano 等基于 Shell 终端的编辑器&#xff08;我曾经也是个 …...

艾体宝案例丨CircleCI 助力 ANA Systems 打造高效 CI/CD 模型

在现代软件开发领域&#xff0c;效率和可靠性是企业在竞争中取胜的关键。本文将深入探讨 ANA Systems 如何通过引入业界领先的 CI/CD 平台——CircleCI&#xff0c;克服传统开发流程的瓶颈&#xff0c;实现开发运营效率的全面提升。同时&#xff0c;本文还将详细解析 CircleCI …...

vue 上传组件 vxe-upload 实现拖拽调整顺序

vue 上传组件 vxe-upload 实现拖拽调整顺序&#xff0c;通过设置 drag-sort 参数就可以启用拖拽排序功能 官网&#xff1a;https://vxeui.com/ 图片拖拽排序 <template><div><vxe-upload v-model"imgList" mode"image" multiple drag-sor…...

Elasticsearch的一些介绍

你想问的可能是 **Elasticsearch**&#xff0c;以下是关于它的一些介绍&#xff1a; ### 概述 Elasticsearch是一个基于Apache Lucene库构建的开源分布式搜索和分析引擎&#xff0c;采用Java语言编写&#xff0c;具有高性能、可扩展性和易用性等特点&#xff0c;可用于各种数据…...

从源码构建安装Landoop kafka-connect-ui

背景 部署Landoop kafka-connect-ui最简单的办法还是通过docker来部署&#xff0c;我们之前的kafka-connect-ui就是通过docker部署的&#xff0c;但是&#xff0c;最近发现个问题&#xff1a;当使用docker部署且防火墙使用的是firewalld的情况下&#xff0c;就会出现端口冲突。…...

MybatisPlus-扩展功能

代码生成 在使用MybatisPlus以后&#xff0c;基础的Mapper、Service、PO代码相对固定&#xff0c;重复编写也比较麻烦。因此MybatisPlus官方提供了代码生成器根据数据库表结构生成PO、Mapper、Service等相关代码。只不过代码生成器同样要编码使用&#xff0c;也很麻烦。 这里…...

发布/部署WebApi服务器(IIS+.NET8+ASP.NETCore)

CS软件授权注册系统-发布/部署WebApi服务器(IIS.NET8ASP.NETCore) 目录 本文摘要VS2022配置发布VS2022发布WebApiIIS服务器部署WebApi 将程序文件复制到云服务器添加网站配置应用程序池配置dns域名配置端口阿里云ECS服务器配置19980端口配置https协议 (申请ssl证书)测试WebAp…...

【2025最新计算机毕业设计】基于SpringBoot+Vue城市中小学体育场馆预约系统【提供源码+答辩PPT+文档+项目部署】

一、项目技术架构&#xff1a; 本项目是一款城市中小学体育场馆预约系统的设计与实现。 该SpringBootVue的城市中小学体育场馆预约系统&#xff0c;后端采用SpringBoot架构&#xff0c;前端采用VueElementUI实现页面的快速开发&#xff0c;并使用关系型数据库MySQL存储系统运行…...

Spring Security 6 系列之二 - 基于数据库的用户认证和认证原理

之所以想写这一系列&#xff0c;是因为之前工作过程中使用Spring Security&#xff0c;但当时基于spring-boot 2.3.x&#xff0c;其默认的Spring Security是5.3.x。之后新项目升级到了spring-boot 3.3.0&#xff0c;结果一看Spring Security也升级为6.3.0&#xff0c;关键是其风…...

vue中打包dist文件内static 和 assets 的区别

背景 在Vue.js项目中&#xff0c;assets 和 static 是两个用于存放静态资源的文件夹&#xff0c;但它们在使用方式和处理机制上有所不同 用途 assets: assets 文件夹通常用于存放那些需要在构建过程中被Webpack处理的静态资源。这些资源可以包括图片、字体、样式文件&#…...

Big Model weekly | 第49期

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 01 Magnetic Preference Optimization: Achieving Last-iterate Convergence for Language Models Alignment 自我对弈方法在多个领域增强模型能力方面展现出了显著的成功。在基于人类反馈的强化学习&#xff0…...

Node.js内置模块

1.内置模块 Node.js的中文网参考手册:https://nodejs.cn//api 帮助文档 API文档:查看对应的模块,左边是模块,右边是模块的成员 源码:https://github.com/nodejs/node/tree/main/lib 查看 例如: http.js 创建web服务器的模块 -->进入源码中,搜索…...

使用Nexus3搭建npm私有仓库

一、npm介绍 npm的全称是Node Package Manager&#xff0c;它是一个开放源代码的命令行工具&#xff0c;用于安装、更新和管理Node.js模块。npm是Node.js的官方模块管理器&#xff0c;它允许用户从一个集中的仓库中下载和安装公共的Node.js模块&#xff0c;并将这些模块集成到…...

MySQL学习之表操作

MySQL学习之表操作 基础命令 查询当前所在数据库的所有表 show tables;查看指定的表结构, 可以查看到指定表的字段&#xff0c;字段的类型、是否可以为NULL&#xff0c;是否存在默认值等信息 mysql> desc user; ----------------------------------------------- | Field |…...

C语言学习day22:ReadProcessMemory函数/游戏内存数据读取工具开发

简言&#xff1a; ReadProcessMemory函数是 Windows API 中的一个函数&#xff0c;用于从目标进程的虚拟内存空间中读取数据。这个函数非常有用&#xff0c;尤其是在进行内存分析、调试、或某些类型的逆向工程时。 ReadProcessMemory函数 函数原型 BOOL ReadProcessMemory(…...

Linux虚拟文件系统

参考&#xff1a;深入分析LINUX内核源码 深入分析Linux内核源码 (kerneltravel.net) 作为一个最著名的自由软件&#xff0c;Linux 确实名不虚传&#xff0c;几乎处处体现了“自由”&#xff0c;你可以编译适合自己系统要求的内核&#xff0c;或者轻松添加别人开发的新的模块。只…...

OpenIPC开源FPV之Adaptive-Link天空端代码解析

OpenIPC开源FPV之Adaptive-Link天空端代码解析 1. 源由2. 框架代码3. 报文处理3.1 special报文3.2 普通报文 4. 工作流程4.1 Profile 竞选4.2 Profile 研判4.3 Profile 应用 5. 总结6. 参考资料7. 补充资料7.1 RSSI 和 SNR 的物理含义7.2 信号质量加权的理论依据7.3 实际应用中…...

NPU是什么?电脑NPU和CPU、GPU区别介绍

随着人工智能技术的飞速发展&#xff0c;计算机硬件架构也在不断演进以适应日益复杂的AI应用场景。其中&#xff0c;NPU&#xff08;Neural Processing Unit&#xff0c;神经网络处理器&#xff09;作为一种专为深度学习和神经网络运算设计的新型处理器&#xff0c;正逐渐崭露头…...

.Net WebAPI(一)

文章目录 项目地址一、WebAPI基础1. 项目初始化1.1 创建简单的API1.1.1 get请求1.1.2 post请求1.1.3 put请求1.1.4 Delete请求 1.2 webapi的流程 2.Controllers2.1 创建一个shirts的Controller 3. Routing3.1 使用和创建MapControllers3.2 使用Routing的模板语言 4. Mould Bind…...

.NET 技术 | 调用系统API创建Windows服务

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…...

OpenLinkSaas 2025年1月开发计划

先来看看OpenLinkSaas的大目标 在OpenLinkSaas的产品目标中&#xff0c;让开发人员更加方便的使用云资源是目标之一。通过各大云厂商的API&#xff0c;来可视化云上基础设施的数据是远远不够的。我们准备在2025年1月份增加方便管理和运营研发场景下服务器的能力。 这部分的功能…...

同态加密算法详解及Python实现

目录 同态加密算法详解及Python实现第一部分:同态加密概述与原理1.1 什么是同态加密?同态加密的定义:1.2 同态加密的分类1.3 同态加密的优势与挑战优势挑战第二部分:常见同态加密算法及其应用场景2.1 RSA同态加密支持操作应用场景2.2 Paillier加密支持操作应用场景2.3 Gent…...

【HarmonyOS NEXT】ArkTs函数、类、接口、泛型、装饰器解析与使用

1. 前置学习文档 【HarmonyOS NEXT】ArkTs数据类型解析与使用(https://juejin.cn/spost/7448894500348608522) 2. 前言 在原生JavaScript中只有函数和类的实现&#xff0c;为了更好的面向对象编程&#xff0c;TypeScript 引入了接口、泛型、装饰器等特性。ArkTS也继承了这些特性…...

【数学】矩阵的逆与伪逆 EEGLAB

文章目录 前言matlab代码作用EEGLAB 中的代码总结参考文献 前言 在 EEGLAB 的使用中&#xff0c;运行程序时出现了矩阵接近奇异值&#xff0c;或者缩放错误。结果可能不准确。RCOND 1.873732e-20 的 bug&#xff0c;调查 EEGLAB 后发现是 raw 数据的问题。 matlab代码 A_1 …...

用github镜像加速, --recursive还是去github站怎么处理?

小伙伴们大多碰到过github抽风的情况&#xff0c;时通时断&#xff0c;时快时慢&#xff0c;非常考验心情。 以前碰到连不上的时候&#xff0c;我大多就是在gitee和gitcode网站找一下镜像&#xff0c;找到后直接git clone 新地址即可。但是碰到 --recursive的时候就不行了&…...

第P2周:Pytorch实现CIFAR10彩色图片识别

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 目标 实现CIFAR-10的彩色图片识别实现比P1周更复杂一点的CNN网络 具体实现 &#xff08;一&#xff09;环境 语言环境&#xff1a;Python 3.10 编 译 器: …...

springboot3访问第三方接口

添加依赖&#xff08;如果尚未添加&#xff09; 在pom.xml文件中&#xff0c;确保已经包含spring-boot-starter-web依赖&#xff0c;因为RestTemplate通常在这个依赖范围内。如果没有&#xff0c;添加如下依赖&#xff1a; <dependency><groupId>org.springframe…...

Ubuntu K8s

https://serious-lose.notion.site/Ubuntu-K8s-d8d6a978ad784c1baa2fc8c531fbce68?pvs74 2 核 2G Ubuntu 20.4 IP 172.24.53.10 kubeadmkubeletkubectl版本1.23.01.23.01.23.0 kubeadm、kubelet 和 kubectl 是 Kubernetes 生态系统中的三个重要组件 kubeadm&#xff1a; 主…...

大数据第三次周赛

类斐波那契循环数 #include<bits/stdc.h> using namespace std; #define int long long int arr[1000010]; bool key(int k){int num0;string strto_string(k);for(int i0;i<str.length();i){arr[num]str[i]-0;}int l0,rnum-1;int shix0; while(shix<k){shix0;for…...

《Java核心技术I》Swing用户界面组件

Swing和模型-视图-控制器设计模式 用户界面组件各个组成部分&#xff0c;如按钮&#xff0c;复选框&#xff0c;文本框或复杂的树控件&#xff0c;每个组件都有三个特征&#xff1a; 内容&#xff0c;如按钮的状态&#xff0c;文本域中的文本。外观&#xff0c;颜色&#xff0c…...

Web开发 -前端部分-CSS

CSS CSS&#xff08;Cascading Style Sheet&#xff09;:层叠样式表&#xff0c;用于控制页面的样式&#xff08;表现&#xff09;。 一 基础知识 1 标题格式 标题格式一&#xff1a; 行内样式 <!DOCTYPE html> <html lang"en"><head><meta…...

旅游系统旅游小程序PHP+Uniapp

旅游门票预订系统&#xff0c;支持景点门票、导游产品便捷预订、美食打卡、景点分享、旅游笔记分享等综合系统 更新日志 V1.3.0 1、修复富文本标签 2、新增景点入驻【高级版本】3、新增门票核销【高级版】4、新增门票端口【高级版】...

Windows 与 Linux 下 Ping IPv6 地址 | 常用网络命令

注&#xff1a;本文为网络命令相关文章合辑。 未整理去重。 一、IPv6 概述 IPv6 即 “Internet 协议版本 6”&#xff0c;因 IPv4 地址资源面临耗尽问题而被引入以替代 IPv4。IPv6 则提供了理论上多达 2 128 2^{128} 2128 个地址&#xff0c;有效解决地址不足困境。 IPv6 具…...

前端学习一

一 进程与线程 线程是进程执行的最小单位&#xff0c;进程是系统分配任务的最小单位。 一个进程可执行最少一个线程。线程分为子线程和主线程。 主线程关闭则子线程关闭。 二 浏览器进程 浏览器是多进程多线程应用。 进程包括&#xff1a; 浏览器进程 负责程序交互渲染…...

【Python · PyTorch】卷积神经网络(基础概念)

【Python PyTorch】卷积神经网络 CNN&#xff08;基础概念&#xff09; 0. 生物学相似性1. 概念1.1 定义1.2 优势1.2.1 权重共享1.2.2 局部连接1.2.3 层次结构 1.3 结构1.4 数据预处理1.4.1 标签编码① One-Hot编码 / 独热编码② Word Embedding / 词嵌入 1.4.2 归一化① Min-…...

Spring Framework 路径遍历漏洞复现(CVE-2024-38819)

hu0x01 产品描述: Spring Framework 是一个功能强大的 Java 应用程序框架,旨在提供高效且可扩展的开发环境。它结合了轻量级的容器和依赖注入功能,提供了一种使用 POJO 进行容器配置和面向切面的编程的简单方法,以及一组用于AOP的模块。0x02 漏洞描述: Spring Framework 存…...