FILE类与IO流
目录
File类的实例化与常用方法
File类的理解
文件路径的表示方式:
API的使用
IO流概述与流的分类
I/O流中的是Input/Output的缩写
IO流的分类(不同角度)
Java程序中的IO流涉及40多个,但实际上都是由4个抽象类衍生出来的。
FileReader和FileWriter读取、写出文本数据
操作步骤
实例
注意点
FileInputStream和FileOutputStream的使用
使用
步骤
实例
注意点
处理流之一:缓冲流的使用
作用:
使用:
案例
处理流之二:转换流的使用及各种字符集的讲解
首先我们需要理解两个名词
如果希望程序在读取文件时,不出现乱码,需要注意什么?
转换流
关于字符集
在存储的文件中的字符
内存中的字符
处理流之三:对象流的使用及对象的序列化机制
数据流
对象流
实例
自定义类实现序列化机制
注意点:
其他流的使用(了解)
标准输入、输出流
File类的实例化与常用方法
File类的理解
- File类位于java.io包下,涉及的相关流都声明在java.io包下。
- File类的一个对象,对应操作系统下的一个文件或一个文件目录(或文件夹)
- FILE类中声明了新建、删除、获取名称、重命名等方法,并没有涉及到文件内的读写操作。要想实现文件内容的读写,就需要使用IO流
- FILE类的对象,通常是作为io流操作的文件的端点出现的
- 代码层面,我们将FILE类的对象作为参数传递到IO流相关类的构造器中。
如何辨别目录和文件:小方法:有后缀就是文件,没有就是目录
文件路径的表示方式:
- 绝对路径:以Windows操作系统为例,包括盘符在内的文件或文件目录的完整路径
- 相对路径:相对于某一个文件目录来讲的相对的位置
- 在IDEA中如果使用单元测试方法,相对路与当前的module来讲
- 如果使用main方法,相对于当前的project来讲
API的使用
- 构造器
- public File(String pathname):
- public File(String parent,String child):
- 参数1:一定是一个文件目录。
- 参数2:可以是一个文件,也可以是一个文件目录(看后缀)。
- public File(File parent,String child)
- 方法(熟悉)
- 获取文件和目录的基本信息
- 文件不存在时
- 存在时
- 绝对路径
- 列出目录的下一级
- File类的重命名功能
- file1.renameTo(file2)
- 要求:
- file1必须存在,file2必须不存在;且file2所在的文件目录需要存在
- 判断功能的方法
- 创建和删除功能
- 获取文件和目录的基本信息
IO流概述与流的分类
Java程序中,对于数据的输入/输出操作以流的方式进行,可以看作是一种数据的流动
I/O流中的是Input/Output的缩写
- 输入input:读取外部数据(磁盘、光盘等存储设备的数据)到程序(内存)中。
- 输出output:将程序(内存)数据输出到磁盘、光盘等存储设备中。
IO流的分类(不同角度)
- 流向的不同:输入流、输出流
- 存储单位的不同:字节流、字符流
- 角色的不同:节点流、处理流
Java程序中的IO流涉及40多个,但实际上都是由4个抽象类衍生出来的。
- 4个抽象基类:InputStream,OutputStream,Reader,Writer
- 4个节点流(也称为文件流):FileInputStream,FileOutputStream,FileReader,FileWriter
- 分别有对应的4个缓冲流(处理流的一种):BufferedInputStream,BufferedOutputStream,BufferedReader,BufferedWriter
FileReader和FileWriter读取、写出文本数据
操作步骤
- 第1步:创建读取或写出的File类的对象
- 第2步:创建输入流或输出流
- 第3步:具体的读入或写出的过程。
- 读入:read(char[]cbuffer)
- 写出:write(string str)/write (char[]cbuffer,0,len)
- 第4步:关闭流资源,避免内存泄漏
实例
1.
- 实例1:读取文件中的内容,显示在控制台上
- 1.创建File类的对象,对应着hello.txt文件。
- 2.创建输入型的字符流,用于读取数据。
- 3.读取数据,并显示在控制台上。
- 4.流资源的关闭操作(必须要关闭,否则会泄露)
2.
- 实例2:将内存的数据写出到指定的文件中
- 1.创建File类的对象,指明要写出的文件的名称
- 2.创建输出型的字符流。
- 3.写出具体过程
- 4.关闭资源
- 输出时,文件可以不在,他会帮我们创建文件
- 构造器的不同,会进行不同的操作
3.
- 实例3:复制一份hello.txt文件,命名为hello_copy.txt
- 1.创建File类的对象
- 2.创建输出流、输入流
- 3.数据的读入和写出的操作
- 4.关闭流资源
注意点
- ①因为涉及到流资源的关闭操作,所以出现异常的话,需要使用try-catch-finally的方式来处理异常
- ②
- 对于输入流来讲,要求File类的对象对应的物理磁盘上的文件必须存在,否则会报FileNotFoundException;
- 对于输出流来讲,File类的对象对应的物理磁盘上的文件可以不存在
- 如果此文件不存在,在输出过程中,会自动创建此文件,并写出数据到此文件中
- 如果此文件存在,使用FileWriter(File file)或FileWriter(File file,false):输出数据过程中,会新建同名的文件对现有的文件进行覆盖。
- 如果此文件存在,使用FileWriter(File file,true):输出数据过程中,会在现有的文件的末尾追加写出内容
FileInputStream和FileOutputStream的使用
字符流不适合用来处理非文本文件,字节流能解决这个问题
使用
步骤
- 1.创建相关的File类对象
- 2.创建相关的输入流或输出流
- 3.具体的读入和写出的过程(数组大小一般1024)
- 读入:read(byte []cbuffer)
- 写出:write(string str)/write (byte[]cbuffer,0,len)
- 4.关闭资源
实例
- 实例1:复制一份playgirl.jpg文件,命名为playgirl_copy_jpg;
- 1.创建相关的File1类对象
- 2.创建相关的字节流
- 3.数据的读入和写出
- 4.关闭资源
注意点
(在注意FileReader和FileWrite的基础上)对于字符流只能操作文本文件,不能用来处理非文本文件;对于字节流,通常用来处理非文本文件,但是,如果涉及到文本文件的赋值操作也可以使用字节流。
常见文本文件:.txt 、.java 、.c 、.c++ 等
常见非文本文件:.doc 、.excel 、.jpg 、.mp3 等
处理流之一:缓冲流的使用
作用:
提高文件的读写效率
使用:
- 处理非文本文件字节流
- BufferedInputStream——>read(byte[]buffer)\flush();
- BufferedOutputStream——>write(byte[]buffer,0,length)\flush( )
- 处理文本文件的字符流
- BufferedWriter——>read(char[]cbuffer)/String readLine( )
- BufferReader——>write(char[]cbuffer,0,length)/write(string )、flush( )
案例
- 案例一
- 案例二,readline返回不包含换行符
- 案例赋值操作
处理流之二:转换流的使用及各种字符集的讲解
首先我们需要理解两个名词
- 字符编码:(从我们能看懂的转换为看不懂的)字符、字符串、字符数组——>字节、字节数组
- 字符解码:(从我们能看不懂的转换为我们能看懂的)字节、字节数组——>)字符、字符串、字符数组
如果希望程序在读取文件时,不出现乱码,需要注意什么?
- 解码时使用的字符集必须与当初编码时使用的字符集必须相同。
- 拓展:解码集必须要与编码集兼容。比如:文件编码使用的是GBK,解码时使用的是utf-8。如果文件中只有英文字符,此情况下也不会出现乱码。因为GBK与utf-8都向下兼容了ASCII
转换流
- 作用:实现字节与字符之间的转换
- API:
- InputStreamReader:将一个输入型的字节流转换为输入型的字符流
- OutputStreamWriter:将一个输出型的字符流转换为输出型的字节流
- 实例
关于字符集
在存储的文件中的字符
- ascii:主要用来存储abc等英文字符、常用标点符号、数字123等。每一个字符占用一个字节
- iso-8859-1:拉丁码(了解),每一个字符占用一个字节,向下兼容ascii
- gbk:用来存储包括中文简体繁体、abc等英文字符、常用标点符号、数字123等。中文字符是使用两个个字节存储的。向下兼容ascii(意味着abc等英文字符、常用标点符号、数字123等仍使用一个字节)
- utf-8:可以用来存储世界范围内主要的语言的所有的字符。使用1-4个不等的字节表示一个字符。中文字符使用3个字节存储的。向下兼容ascii(意味着abc等英文字符、常用标点符号、数字123等仍使用一个字节)
内存中的字符
- Unicode字符集。
- char 占用2个字节。在内存中使用的字符集称为Unicode字符集。
处理流之三:对象流的使用及对象的序列化机制
数据流
- DataOutputStream:可以将内存中的基本数据类型的变量、String类型的变量写出到具体的文件中
- DataInputStream:可以将文件中保存的数据还原为内存中的基本数据类型的变量、String类型的变量
- 只能处理基本数据类型和String类型
对象流
- 数据流能做的对象流都能做(所以了解对象流就行)
- API:ObjectInputStream、ObjectOutputStream
- 作用:
- 可以读写基本数据类型的变量、引用数据类型的变量
- 对象的序列化机制:对象的序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。//当其他程序获取了这种二进制流,就可以恢复成原来的Java对象
- 两个过程使用的流:
- 序列化过程:使用ObjectOutputStream流实现。将内存中的Java对象保存在文件中或通过网络传输出去
- 反序列化过程:使用ObjectInputStream流实现。将文件中的或网络传输过来的数据还原为内存中的Java对象。
实例
- 实例1(基本数据类型)
- 序列化过程
- 创建File类对象和流的对象
- 写出数据即为序列化的过程
- 关闭资源
- 反序列化过程
- 创建File类对象和流的对象
- 读取文件中的对象即为序列化的过程
- 关闭资源
- 序列化过程
- 实例2(String类型)
- 对象
自定义类实现序列化机制
- ①自定义类需要实现一个接口:Serializable(属于一个标识接口)
- ②要求自定义类声明一个全局常量:static final long seriaVersionUID = 78968889L(这个随便,不一样就行);用来唯一的标识当前的类的。
- ③要求自定义类的属性也必须是可序列化的。
- 对于基本数据类型的属性:默认就是可以序列化的
- 对于引用数据类型的属性:要求实现Serializable接口
注意点:
- 如果不声明全局常量serialVersionUID,系统会自动生成一个针对于当前类的一个serialVersionUID。如果修改此类的话,serialVersionUID会自己变化,进而导致反序列化时出现异常。
- 类中的属性如果声明为transient或static,则不会实现序列化。
其他流的使用(了解)
标准输入、输出流
- System in:标准的输入流,默认从键盘输入
- System out:标准的输出流,默认从显示器输出(理解为控制台输出)
- 通过调用如下方法修改输入流和输出流的位置
- setIn(InputStream is)
- setOut(PrintStream ps)
- 打印流PrintStream
相关文章:
FILE类与IO流
目录 File类的实例化与常用方法 File类的理解 文件路径的表示方式: API的使用 IO流概述与流的分类 I/O流中的是Input/Output的缩写 IO流的分类(不同角度) Java程序中的IO流涉及40多个,但实际上都是由4个抽象类衍生出来的。 F…...
学习Python先从了解Python开始
Python是一种高级编程语言,它的语法简洁易读,功能强大,应用领域广泛。Python不仅适用于数据科学、机器学习、Web开发等领域,还可以用于自动化脚本编写、游戏开发等。在本文中,我们将探讨Python的特点、应用领域以及未来…...
centos7安装mysql5.7笔记
1 配置yum仓库 1.1更新密钥 #更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 1.2 下载使用wget命令下载MySQL的repo文件 #下载使用wget命令下载MySQL的repo文件 wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 2 使用…...
AI容器化部署开发尝试 (一)(Pycharm连接docker,并部署django测试)
注意:从 Docker 19.03 开始,Docker 引入了对 NVIDIA GPU 的原生支持,因此若AI要调用GPU算力的话docker版本也是有要求的,后面博客测试。 当然本篇博客还没设计到GPU的调用,主要Pycharm加Anaconda的方案用习惯了&#…...
骑砍2霸主MOD开发(5)-游戏事件
一.MissionBehavior Mission任务中发生的事件,AgentSpawn,AgentRemove,BeforeMissionStart等统称为MissionBehavior. 通过在Mission中添加属于自己的MissionBehavior实现对游戏任务事件的捕捉 <1.在MBSubModuleBase中重写OnBeforeMissionBehaviorInitialize(Mission mission…...
【Unity 实用工具篇】 | UIEffect 实现一系列UGUI特效,灰度、负片、像素化特效
前言 【Unity 实用工具篇】 | UIEffect 实现一系列UGUI特效,灰度、负片、像素化特效一、UGUI特效插件:UIEffect1.1 介绍1.2 效果展示1.3 使用说明及下载 二、组件属性面板三、代码操作组件四、组件常用方法示例4.1 使用灰度特效做头像(关卡)选择 总结 前…...
机器学习鸢尾花各种模型准确率对比
流程 获取数据集导入需要的包读取数据划分训练集和测试集调用各种模型比较准确率 获取数据集 链接:https://pan.baidu.com/s/1RzZyXsaiJB3e611itF466Q?pwdj484 提取码:j484 --来自百度网盘超级会员V1的分享导入需要的包 import pandas as pd impo…...
Java 语言程序设计(基础篇)原书第10版 梁勇著 PDF 文字版电子书
简介 Java 语言程序设计(基础篇)原书第 10 版 是 Java 语言的经典教材,中文版分为基础篇和进阶篇,主要介绍程序设计基础、面向对象程序设计、GUI 程序设计、数据结构和算法、高级 Java 程序设计等内容。本书通过示例讲解问题求解…...
Appian发布最新版本:通过AI流程自动化推动业务发展
Appian公司于2024年4月16日在弗吉尼亚州麦克莱恩宣布推出Appian平台的最新版本。此版本引入了Process HQ,这是一个集流程挖掘和企业AI于一体的系统,结合了Appian的数据平台。Process HQ为企业运营提供前所未有的可见性,支持数据驱动的决策和流…...
AbstractQueuedSynchronizer 源码解析
AbstractQueuedSynchronizer 源码解析 文章目录 AbstractQueuedSynchronizer 源码解析一、CAS二、字段分析三、内部类 Node1、CLH 队列2、源码分析 四、内部类 ConditionObject1、字段分析2、方法分析1、await2、signal 五、方法分析1、独占式下的 AQS1、acquire 独占式获取资源…...
OpenCV——Niblack局部阈值二值化方法
目录 一、Niblack算法1、算法概述2、参考文献二、代码实现三、结果展示OpenCV——Niblack局部阈值二值化方法由CSDN点云侠原创,爬虫自重。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、Niblack算法 1、算法概述 Niblack 算法是一种典型的局部阈值…...
聚观早报 | 华为Pura70系列先锋计划;月之暗面升级Kimi
聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 4月19日消息 华为Pura70系列先锋计划 月之暗面升级Kimi OPPO Find X7将推白色版本 波士顿动力推出人形机器人 v…...
牛客NC314 体育课测验(一)【中等 图,BFS,拓扑排序 Java,Go、PHP】
题目 题目链接: https://www.nowcoder.com/practice/1a16c1b2d2674e1fb62ce8439e867f33 核心 图,BFS,拓扑排序,队列参考答案Java import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修…...
微信小程序picker设置了系统年度,打开选择年份从1年开始显示
背景:开发微信小程序时,使用了picker组件,设置值为当前系统时间年份,可以正常回显年份。但是打开面板选择年份的时候,默认从一年开始显示的。如下图所示。 原因:因为绑定的年份字段为Number类型。 解决方案…...
pytorch-手写数字识别之全连接层实现
目录 1. 背景2. nn.Linear线性层2. 实现MLP网络3. train4. 完整代码 1. 背景 上一篇https://blog.csdn.net/wyw0000/article/details/137622977?spm1001.2014.3001.5502中实现手撸代码的方式实现了手写数字识别,本文将使用pytorch的API实现。 2. nn.Linear线性层…...
Pytorch-自动微分模块
🥇接下来我们进入到Pytorch的自动微分模块torch.autograd~ 自动微分模块是PyTorch中用于实现张量自动求导的模块。PyTorch通过torch.autograd模块提供了自动微分的功能,这对于深度学习和优化问题至关重要,因为它可以自动计算梯度,…...
Reactive判断的API
Reactive判断API 1. isProxy2. isReactive3. isReadonly4. toRaw5. shallowReactive6. shallowReadonly 1. isProxy 检查对象是否是由reactive或readonly创建的proxy.const info1 reactive({name:why,age:18})const info2 readonly(reactive({name:why,age:18}))console.log(…...
伪选择器和伪元素选择器
常用伪类 用来添加一些选择器的特殊效果 a:hover:鼠标滑过链接 a:link:未访问链接 a:visited:以访问链接 a:active:已选中链接 :nth-child(n):选择所有冒号前元素的父元素的第二个子元素 常用伪元素 用来添加一些选择器的特殊效…...
Android 纵向双选日历
这个日历的布局分两部分,一部分是显示星期几的LinearLayout,另外就是一个RecyclerView,负责纵向滚动了。 工具类: implementation com.blankj:utilcode:1.17.3上activity_calendar代码: <?xml version"1.0&…...
电流电压;为什么用铜线作为导体
目录 电流电压 为什么用铜线作为导体 电流:电是怎么流动的 电压:储存压力...
(2024,扩展Transformer和数据,SDXL,SD2,DiT与 UNet)基于扩散的文本到图像生成的可扩展性
On the Scalability of Diffusion-based Text-to-Image Generation 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0. 摘要 3. 扩展 Denoising 骨干 3.1. 现有的 UNet 设计 3.2. UNe…...
redis_watchDog机制
文章目录 介绍机制介绍任务开始任务释放 介绍 redis的watchDog机制实现了超时续约的功能,简单来说就是在获取锁成功以后,开启一个定时任务,这个任务每隔一段时间(relaseTime / 3),重置超时时间,避免的因业务阻塞导致锁…...
浏览器跨标签页通信的方式都有哪些
跨标签页的实际应用场景: 1. 共享登录状态: 用户登录后,多个标签页中需要及时获取到登录状态,以保持一致的用户信息。这种情况,可以使用浏览器的 localStorage 或者 sessionStorage 来存储登录状态,并通过…...
Javascript 无处不在的二分搜索
我们知道二分查找算法。二分查找是最容易正确的算法。我提出了一些我在二分搜索中收集的有趣问题。有一些关于二分搜索的请求。我请求您遵守准则:“我真诚地尝试解决问题并确保不存在极端情况”。阅读完每个问题后,最小化浏览器并尝试解决它。 …...
JavaScript 流程控制-分支
一、流程控制 流程控制主要有三种结构,分别是顺序结构、分支结构和循环结构。 二、顺序流程控制 顺序结构,没有特定的语法结构,程序会按照代码的先后顺序,依次执行, 三、分支流程控制 if 语句 1、分支结构 由上到下…...
ctfhub-ssrf(2)
1.URL Bypass 题目提示:请求的URL中必须包含http://notfound.ctfhub.com,来尝试利用URL的一些特殊地方绕过这个限制吧 打开环境发现URL中必须包含http://notfound.ctfhub.com,先按照之前的经验查看127.0.0.1/flag.php,发现没什么反应,按照题…...
python中中英文打印对齐解决方案
在python中,有时候会出现中英文混合输出的情形,但是由于中文默认是全角格式(一个中文字符占用两个字符宽度),这会对python原生的print函数带来一些障碍。尤其是用户用print对齐输出的时候,这种差异会导致文…...
Objective-C网络数据捕获:使用MWFeedParser库下载Stack Overflow示例
概述 Objective-C开发中,网络数据捕获是一项常见而关键的任务,特别是在处理像RSS源这样的实时网络数据流时。MWFeedParser库作为一个优秀的解析工具,提供了简洁而强大的解决方案。本文将深入介绍如何利用MWFeedParser库,以高效、…...
MATLAB数据类型和运算符+矩阵创建
个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 ✍一、MATLAB数据类型和运算符💎1 MATLAB的数据类型🌹…...
UE5下载与安装
官方网站:https://www.unrealengine.com/zh-CN 1、下载启动程序安装包。 登录官网后,点击首页右侧下载按钮下载Epic Games启动程序的安装包,如下图: 2、安装启动程序。 双击步骤1所下载安装软件,如下图:…...
RabbitMQ和Minio实现头像存储
使用 RabbitMQ 处理用户头像上传任务,同时将用户头像存储在 Minio 中是一个常见的应用场景。该示例将展示如何在 Spring Boot 项目中使用 RabbitMQ 和 Minio 实现此功能。示例包括两个部分:一是将头像上传任务推送到 RabbitMQ 队列中;二是从队…...
react结合Redux实现全局状态管理
React与Redux结合使用,可以为React应用提供集中式的状态管理和复杂的业务逻辑处理能力。以下是React中使用Redux的基本步骤和关键概念: 安装所需库 确保已经安装了React和ReactDOM。然后安装Redux及其配套库: npm install redux react-redu…...
2024面试软件测试,常见的面试题(上)
一、综合素质 1、自我介绍 面试官您好,我叫XXX,一直从事车载软件测试,负责最多的是中控方面。 以下是我的一些优势: 车载的测试流程我是熟练掌握的,且能够独立编写测试用例。 平时BUG提交会使用到Jira,类似…...
【VUE】Vue项目打包报告生成:让性能优化触手可及
Vue项目打包报告生成:让性能优化触手可及 Vue.js是一款流行的前端框架,开发者在使用Vue.js构建项目时,生产环境的性能优化尤为重要。为了帮助开发者分析和优化打包出来的资源,生成打包报告是一个不可或缺的步骤。本文将介绍几种在…...
git简单实践
拉取远程仓库 git clone -b main gitgithub.com:xianbingC/MultiQueueThreadpool.git创建开发分支 git checkout -b c11 # 创建本地分支C11并切换过去 git push origin c11 # 提交到远程,并在远程仓库创建该分支提交代码 第一次提交会提示设置邮箱和用户名&am…...
华为云服务镜像手动更换
操作步骤: 1、进入华为云首页点击云容器引擎CCE; 2、选择你所要更换镜像的环境【这里以dev环境演示】; 3、点击dev环境后选择顶部的命名空间,点击【工作负载】中右侧栏的【升级】按钮; 4、点【更换镜像】选择你在test…...
Python 天气预测
Python天气预测通常涉及到数据采集、数据预处理、选择和训练模型、以及预测和可视化等步骤。以下是使用Python进行天气预测的一般流程: 数据采集 使用爬虫技术从天气网站(如Weather Underground、中国天气网等)爬取历史天气数据,…...
计算机视觉——基于OpenCV和Python进行模板匹配
模板匹配? 模板匹配是它允许在一幅较大的图像中寻找是否存在一个较小的、预定义的模板图像。这项技术的应用非常广泛,包括但不限于图像识别、目标跟踪和场景理解等。 目标和原理 模板匹配的主要目标是在一幅大图像中定位一个或多个与模板图像相匹配的…...
2024-Java-Maven学习笔记
Maven Maven是一个Java项目管理和构建工具,作用:定义(规范)项目结构、项目依赖、使用统一的方式自动化构建(clean、compile)。 提供了一套依赖管理机制:利用仓库统一管理jar包,利用…...
【HCIP学习】OSPF协议基础
一、OSPF基础 1、技术背景(RIP中存在的问题) RIP中存在最大跳数为15的限制,不能适应大规模组网 周期性发送全部路由信息,占用大量的带宽资源 路由收敛速度慢 以跳数作为度量值 存在路由环路可能性 每隔30秒更新 2、OSPF协议…...
elmentui树形表格使用Sortable拖拽展开行时拖拽bug
1、使用elemntui的el-table使用Sortable进行拖拽,如下 const el this.$el.querySelector(.el-table__body-wrapper tbody) Sortable.create(el, {onEnd: (event) > {const { oldIndex, newIndex } event//拿到更新前后的下标即可完成数据的更新} })2、但是我这…...
【笔试训练】day6
1.大数加法 思路: 高精度板子,停留一下都是罪过! 代码: class Solution { public:string solve(string s, string t) {vector<int> a;vector<int> b;for(int is.size()-1;i>0;i--)a.push_back(s[i]-0);for(int …...
标准版uni-app移动端页面添加/开发操作流程
页面简介 uni-app项目中,一个页面就是一个符合Vue SFC规范的.vue文件或.nvue文件。 .vue页面和.nvue页面,均全平台支持,差异在于当uni-app发行到App平台时,.vue文件会使用webview进行渲染,.nvue会使用原生进行渲染。…...
VMware 安装配置 Ubuntu(最新版、超详细)
Linux 系列教程: VMware 安装配置 Ubuntu(最新版、超详细)FinalShell 远程连接 Linux(Ubuntu)系统Ubuntu 系统安装 VS Code 并配置 C 环境 文章目录 1. 下载安装 VMware2. 检查网络适配器3. Ubuntu 下载4. 创建虚拟机5…...
clickhouse ttl不生效
现象: 日志保留31天, 但是发现1年前的数据还有。 表结构: CREATE TABLEads_xxxx_metrics_1m_local (static_time String COMMENT 统计时间,......) ENGINE ReplacingMergeTree (process_time) PARTITION BYtoYYYYMMDD (toDate (static_tim…...
前端打包webpack vite
起步 | webpack 中文文档 | webpack中文文档 | webpack中文网 npm run build 1webpack: mkdir webpack-demo cd webpack-demo npm init -y npm install webpack webpack-cli --save-dev vite : 快速上手 | Vue.js...
Cesium之home键开关及相机位置设置
显隐控制 设置代码中的homeButton var TDT_IMG_C "https://{s}.tianditu.gov.cn/img_c/wmts?servicewmts&requestGetTile&version1.0.0" "&LAYERimg&tileMatrixSetc&TileMatrix{TileMatrix}&TileRow{TileRow}&TileCol{TileCol}…...
nginx根据二级目录转发服务以及带/和不带/的区别
在nginx中配置proxy_pass代理转发时,如果在proxy_pass后面的url加/,表示绝对根路径;如果没有/,表示相对路径,把匹配的路径部分也给代理走。具体实例如下 1.配置文件location带/且proxy_pass带/ server {listen 80;se…...
JVM 性能调优命令(jps,jinfo,jstat,jstack,jmap)
常用命令:jps、jinfo、jstat、jstack、jmap jps jps查看java进程及相关信息 jps -l 输出jar包路径,类全名 jps -m 输出main参数 jps -v 输出JVM参数jps命令示例 显示本机的Java虚拟机进程: # jps 15729 jar 92153 Jps 90267 Jstat显示主类…...
探索 IntelliJ IDEA 2024.1最新变化:全面升级助力编码效率
探索 IntelliJ IDEA 2024.1最新变化:全面升级助力编码效率 文章目录 探索 IntelliJ IDEA 2024.1最新变化:全面升级助力编码效率摘要引言 IntelliJ IDEA 2024.1 最新变化关键亮点全行代码补全 Ultimate对 Java 22 功能的支持新终端 Beta编辑器中的粘性行 …...
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(二)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(二) LlaMA 3 系列博客 基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (一) 基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (二) 基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (三) 基于 LlaMA …...
抖音小店有订单后怎么发货?实操分享!发货全流程来了
哈喽~我是电商月月 做无货源抖音小店的店铺在出单后怎么发货?今天我就来给大家解答这个问题,其中的注意事项新手商家可以收藏一下,避免犯错 抖音小店的商品出单后,商家在“管理中心-订单管理”页面就能看见所有待处理的订单 一…...
【JVM基础篇】JVM运行时数据区
文章目录 运行时数据区应用场景一、程序计数器程序计数器的作用程序计数器会出现内存溢出吗? 栈二、Java虚拟机栈栈帧存放什么数据局部变量表字节码文件的局部变量表栈帧的局部变量表思考题:**以下代码的局部变量表中会占用几个槽?** 操作数栈…...
MP3解码入门(基于libhelix)
主要参考资料: 【Arduino Linux】基于 Helix 解码库实现 MP3 音频播放: https://blog.csdn.net/weixin_42258222/article/details/122640413 libhelix-mp3: https://github.com/ultraembedded/libhelix-mp3/tree/master 目录 一、MP3文件二、MP3 解码库三、libhelix-mp3库3.1 …...
【C语言深度解剖】(12):C语言库函数的学习和模拟实现,一篇文章就够了!
🤡博客主页:醉竺 🥰本文专栏:《C语言深度解剖》 😻欢迎关注:感谢大家的点赞评论关注,祝您学有所成! ✨✨💜💛想要学习更多C语言深度解剖点击专栏链接查看&…...
[力扣题解]122. 买卖股票的最佳时机 II
题目:122. 买卖股票的最佳时机 II 思路 贪心法; 计算出利润数组(后一天卖出的钱-前一天买进的钱),把原问题转换为选择所有正利润的操作; 分解:想到最终利润可以分解,分解为每天的利…...
【Linux】linux | 配置系统日志 | 安全日志 | 操作日志 | 登录日志
一、诉求 1、linux服务器开启日志功能,并记录10个月的登录 二、操作 1、进入目录 cd /etc 2、编辑配置 vi logrotate.conf 3、复制配置 /var/log/wtmp {monthlycreate 0664 root utmpminsize 1Mrotate 10 }/var/log/btmp {missingokmonthlycreate 0600 root …...
农林科学SCI期刊,IF=6+,影响力高,对国人非常友好!
一、期刊名称 Crop Journal 二、期刊简介概况 期刊类型:SCI 学科领域:农林科学 影响因子:6.6 中科院分区:1区 出版方式:开放出版 版面费:$900 三、期刊征稿范围 《作物杂志》是一份双月刊、国际、同…...
减肥健身个人总结
个人一直没有健身运动的习惯,工作久了体重超标,体检报告各种指标也不太“美丽”,开始学习一些减肥健身知识,持续更新。目标是每周减1~2斤,用几个月时间持续到体重恢复正常。 文章目录 一、减脂原理---制造热量缺口控制…...
nn.BatchNorm中affine参数的作用
在PyTorch的nn.BatchNorm2d中,affine参数决定是否在批归一化(Batch Normalization)过程中引入可学习的缩放和平移参数。 BN层的公式如下, affine参数决定是否在批归一化之后应用一个可学习的线性变换,即缩放和平移。具…...
TypeScript中的泛型(Generics)
TypeScript中的泛型(Generics) 在前面的几篇文章中,我们了解了TypeScript的类、接口和基本的数据类型系统。本文将重点介绍TypeScript中的泛型,这是一种强大的工具,它允许我们创建可重用的组件,同时保持类…...