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

javaEE-文件内容的读写

目录

一.数据流

1.字节流

InputStream的方法:

cloes()

read()

OutPutStream

writer()方法

2.字符流

Reader:

writer:

代码练习1:

代码练习2:

代码练习3:


一.数据流

java标准库对数据进行了封装,提供了一组类负责进行这些工作.

数据流分为两类:字节流和字符流.

1.字节流

以字节为单位,进行数据的读入(硬盘->cpu) 和写出(cpu->硬盘)。一次最少读取一个字节。

代表类:

InputStream:输入

OutputStream:输出

InputStream是一个抽象类,实现该类可由其 子类实现:

InputStream的方法:

cloes()

调用colse() 目的是为了释放文件描述符:

PCS中包含很多属性,其中就有文件描述符表,就是一个顺序表(数组)。一个进程每打开一个文件,就会在顺序表中分配一个元素,顺序表的长度是有上限的,若每次只打开文件,而不关闭文件,那么这个顺序表将会有被分配完的时候,此时,就会引发文件资源泄露。调用cloes()就会释放被分配的文件描述符!

这种写法,在要操作地代块码中,很有可能提前 return或异常终止了,而无法执行到cloes(),造成文件描述符无法被释放。

因此,应将cloes()放到finall代码块中:

这样一定能执行cloes()。

但这样看代码不太美观,try(){ }还有另一种写法:

try( ):括号中代码:1.定义变量,2.在代码块结束的时候 自动调用close()

将定义的变量放到( )括号中,前提是该变量要 实现Closeable接口

read()

提供了三个版本:

  public static void main1(String[] args) {try(InputStream inputStream=new FileInputStream("./test.exe")){while(true){int n=inputStream.read();if(n==-1){break;}//以标准字节输出流的形式打印输出System.out.printf("%c",n);}} catch (IOException e) {throw new RuntimeException(e);}}public static void main2(String[] args) {//打开文件try(InputStream inputStream=new FileInputStream("./test.exe")){while(true){//循环读取文件byte[] buffer=new byte[1024];//1024:自定义的一次最多读取文件的字节数int n=inputStream.read(buffer);//读文件到buffer字节数组中if(n==-1){break;}//打印输出for(int i=0;i<n;i++){System.out.printf("%c",buffer[i]);}}} catch (IOException e) {throw new RuntimeException(e);}}public static void main(String[] args) {//打开文件try(InputStream inputStream=new FileInputStream("./test.exe")){while(true){//循环读取文件byte[] buffer=new byte[4];//1024:自定义的一次最多读取文件的字节数int n=inputStream.read(buffer,0,4);//读文件到buffer字节数组中// 从0位置开始读取,每次读1024个字节if(n==-1){break;}//将读到的n个字节转换成字符串String s=new String(buffer,0,n);System.out.println(s);}} catch (IOException e) {throw new RuntimeException(e);}}
//以Scanner方式读取:public static void main(String[] args) {try(InputStream inputStream=new FileInputStream("./test.exe")){Scanner scan=new Scanner(inputStream);//从文件读取内容while(scan.hasNext()){String s=scan.next();System.out.println(s);}} catch (IOException e) {throw new RuntimeException(e);}}

OutPutStream

OutPutStream也是一个抽象类,通过子类创建对象:

每次调用OutPutSream就会将调用的文件清空,

要想在每次调用时,文件不被清空,可以在构造方法中再传入一个参数“true",就不会清空文件了:

writer()方法

writer有三个版本:

参考代码:

} catch (IOException e) {throw new RuntimeException(e);}}public static void main1(String[] args) {try(OutputStream outputStream=new FileOutputStream("./test.exe",true) ){byte[] buffer=new byte[]{97,98,99,100,101,102};outputStream.write(buffer);} catch (IOException e) {throw new RuntimeException(e);}}public static void main(String[] args) {try(OutputStream outputStream=new FileOutputStream("./test.exe") ){byte[] buffer=new byte[]{97,98,99,100,101,102};outputStream.write(buffer,0,2);} catch (IOException e) {throw new RuntimeException(e);}}

2.字符流

以字符为单位读写。比如,以utf8表示汉字,每3个字节表示一个汉字,则每次至少以3个字节为单位(1个字符)读取,不能一次读取半个汉字。

代表类:

Reader:输入

Writer:输出

字符流输入输出和上面的字节流用法类似。

Reader:

 public static void main1(String[] args) {
//法一:try(Reader reader=new FileReader("./test.exe")){while(true){int n=reader.read();//每次读单个字符if(n==-1){break;}System.out.printf("%c",n);}} catch (IOException e) {throw new RuntimeException(e);}}
//法二:public static void main(String[] args) {try(Reader reader=new FileReader("./test.exe")){while(true){char[] buffer=new char[1024];int n=reader.read(buffer);//每次读取一个字符数组if(n==-1){break;}String s=new String(buffer,0,n);System.out.println(s);}} catch (IOException e) {throw new RuntimeException(e);}}

writer:

public static void main(String[] args) {try(Writer writer=new FileWriter("./test.exe")){String s="好好学习,天天向上";writer.write(s);//将字符串写入文件} catch (IOException e) {throw new RuntimeException(e);}}

代码练习1:

扫描指定⽬录,并找到名称中包含指定字符的所有普通⽂件(不包含⽬录),并且后续询问⽤⼾是否 要删除该⽂件


public class Io1 {public static void main(String[] args) {System.out.println("请输入要要查找的根目录:");Scanner scan=new Scanner(System.in);String root=scan.next();File file = new File(root);if(!file.isDirectory()){System.out.println("输入的根目录有错误!!");return;}System.out.println("请输入要查找的文件:");String s=scan.next();
//        File file1 = new File(s);
//
//        if(!file1.isFile()){
//            System.out.println("输入的文件有错误!");
//            return;
//        }//根目录和文件都没有问题//从根目录 递归查找 指定文件是否存在Search(file,s);}private static void Search(File root, String s) {File[] files = root.listFiles();if(files==null){return;}for(File f:files){System.out.println("当前遍历到: "+f.getAbsolutePath());if(f.getName().equals(s)){System.out.println("找到文件,路径为:"+f.getAbsolutePath());}else if(f.isDirectory()){//是目录文件,就继续 递归 向下找Search(f,s);}else{;}}}}

代码练习2:

进⾏普通⽂件的复制: 先读取源文件,再写入到复制文件中,边读边写


/*** 进⾏普通⽂件的复制* 先读取源文件,再写入到复制文件中,边读边写*/
public class Io2 {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入源文件路径:");String srcfile=scan.next();File file = new File(srcfile);if(!file.isFile()){System.out.println("源文件路径有误!!");return;}System.out.println("请输入目标文件路径:");String descfile=scan.next();File file1 = new File(descfile);//不要求目标文件存在,但路径 要是 目录if(!file1.getParentFile().isDirectory()){System.out.println("目标文件路径有误!!");return;}try(InputStream inputStream = new FileInputStream(file);FileOutputStream outputStream = new FileOutputStream(file1)){while(true){byte[] buffer=new byte[1024];int n = inputStream.read(buffer);//从源文件读取 到buffer数组中if(n==-1){break;}outputStream.write(buffer,0,n);//将buffer数组中的内容写入到 目标文件中}System.out.println("文件复制完毕!!!!");} catch (IOException e) {throw new RuntimeException(e);}}
}

代码练习3:


/*** 扫描指定⽬录,并找到名称或者内容中包含指定字符的所有普通⽂件(不包含⽬录)*/
public class Io09 {public static void main(String[] args) {System.out.println("请输入要查找的目录:");Scanner scan=new Scanner(System.in);String src=scan.next();File file = new File(src);if(!file.isDirectory()){System.out.println("输入目录有误!!");return;}System.out.println("请输入要查找文件:");String s1=scan.next();scanFile(file,s1);}
//进行目录扫描,查找是否为 文件private static void scanFile(File srcfile,String s){File[] files = srcfile.listFiles();if(files==null){return;}for(File f:files){if(f.isFile()){//是文件,进行搜索,是否有要找到内容SearchWord(f,s);}else if(f.isDirectory()){//是目录 继续递归寻找文件scanFile(f,s);}else{;}}//进行文件查找private static void SearchWord(File f, String s) {try(InputStream inputStream=new FileInputStream(f)){StringBuilder stringBuilder=new StringBuilder();while(true){byte[] buffer=new byte[1024];int n = inputStream.read(buffer);if(n==-1){break;}String str=new String(buffer,0,n);stringBuilder.append(str);}if(stringBuilder.indexOf(s)!=-1){System.out.println("找到了,文件路径为: "+f.getAbsolutePath());}else{System.out.println(f.getAbsolutePath());}} catch (IOException e) {throw new RuntimeException(e);}}
}

相关文章:

javaEE-文件内容的读写

目录 一.数据流 1.字节流 InputStream的方法&#xff1a; cloes() read() OutPutStream writer()方法 2.字符流 Reader: writer: 代码练习1: 代码练习2: 代码练习3: 一.数据流 java标准库对数据进行了封装,提供了一组类负责进行这些工作. 数据流分为两类:字节流和…...

SWM221系列芯片之电机应用及控制

经过对SWM221系列的强大性能及外设资源&#xff0c;TFTLCD彩屏显示及控制进行了整体介绍后&#xff0c;新迎来我们的电控篇---SWM221系列芯片之电机应用及控制。在微控制器市场面临性能、集成度与成本挑战的当下&#xff0c;SWM221系列芯片以其卓越性能与创新设计&#xff0c;受…...

Mongodb日志报错too many open files,导致mongod进程down

【解决方案】 &#xff08;1&#xff09;进入到服务器&#xff0c;执行&#xff1a; ulimit -a 查看&#xff1a;open files这一行的数量&#xff0c;如果查询到的结果是1000左右&#xff0c;那多半是服务器限制。 &#xff08;2&#xff09;在当前session窗口执行如下&…...

在 uni-app 中使用 wxml-to-canvas 的踩坑经验总结

在 uni-app 中使用 wxml-to-canvas 的踩坑经验总结 wxml-to-canvas 是一款非常强大的小程序工具&#xff0c;可以将 WXML 转换为 Canvas 绘图&#xff0c;用于生成海报、分享图片等。将其应用于 uni-app 项目中&#xff0c;可以为多端开发带来极大的便利&#xff0c;但也有一些…...

基本算法——回归

目录 创建工程 加载数据 分析属性 创建与评估回归模型 线性回归 回归树 评估 完整代码 结论 本节将通过分析能源效率数据集&#xff08;Tsanas和Xifara&#xff0c;2012&#xff09;学习基本的回归算法。我们将基 于建筑的结构特点&#xff08;比如表面、墙体与屋顶面…...

NestJS 性能优化:从应用到部署的最佳实践

在上一篇文章中&#xff0c;我们介绍了 NestJS 的微服务架构实现。本文将深入探讨 NestJS 应用的性能优化策略&#xff0c;从应用层到部署层面提供全方位的优化指南。 应用层优化 1. 路由优化 // src/modules/users/users.controller.ts import { Controller, Get, UseInter…...

VuePress搭建个人博客

VuePress搭建个人博客 官网地址: https://v2.vuepress.vuejs.org/zh/ 相关链接: https://theme-hope.vuejs.press/zh/get-started/ 快速上手 pnpm create vuepress vuepress-starter# 选择简体中文、pnpm等, 具体如下 .../19347d7670a-1fd8 | 69 .../19…...

在AWS Lambda上部署Python应用:从入门到实战

在AWS Lambda上部署Python应用:从入门到实战 随着云计算和无服务器架构(Serverless Architecture)在业界的普及,AWS Lambda成为了一个强有力的工具。它让开发者可以部署代码而无需管理服务器,按需运行,按时间计费。AWS Lambda支持多种语言,其中Python作为一门高效、简洁…...

初学STM32 ---高级定时器互补输出带死区控制

互补输出&#xff0c;还带死区控制&#xff0c;什么意思&#xff1f; 带死区控制的互补输出应用之H桥 捕获/比较通道的输出部分&#xff08;通道1至3&#xff09; 死区时间计算 举个栗子&#xff08;F1为例&#xff09;&#xff1a;DTG[7:0]250&#xff0c;250即二进制&#x…...

chatwoot 开源客服系统搭建

1. 准备开源客服系统&#xff08;我是用的Chatwoot &#xff09; 可以选择以下开源客服系统作为基础&#xff1a; Chatwoot: 开源&#xff0c;多语言&#xff0c;跟踪和分析&#xff0c;支持多渠道客户对接&#xff0c;自动化和工作流等。源码Zammad: 现代的开源工单系统。Fr…...

Ungoogled Chromium127编译指南 Linux篇 - 安装Docker(六)

1. 引言 在了解了Docker的重要性后&#xff0c;我们需要在系统中正确安装和配置Docker环境。Docker的安装过程看似简单&#xff0c;但要确保其能够完美支持Ungoogled Chromium的编译&#xff0c;还需要进行一些特殊的配置。本文将详细介绍如何在Ubuntu系统上安装Docker&#x…...

试用ChatGPT的copilot编写一个程序从笔记本电脑获取语音输入和图像输入并调用开源大模型进行解析

借助copilot写代码和自己手写代码的开发过程是一样的。 首先要有明确的开发需求&#xff0c;开发需求越详细&#xff0c;copilot写出的代码才能越符合我们的预期。 其次&#xff0c;有了明确的需求&#xff0c;最好先做下需求拆解&#xff0c;特别是对于比较复杂的应用&#xf…...

Kafka 性能提升秘籍:涵盖配置、迁移与深度巡检的综合方案

文章目录 1.1.网络和io操作线程配置优化1.2.log数据文件刷盘策略1.3.日志保留策略配置1.4.replica复制配置1.5.配置jmx服务1.6.系统I/O参数优化1.6.1.网络性能优化1.6.2.常见痛点以及优化方案1.6.4.优化参数 1.7.版本升级1.8.数据迁移1.8.1.同集群broker之间迁移1.8.2.跨集群迁…...

2024年常用工具

作为本年度高频使用工具&#xff0c;手机端也好&#xff0c;桌面端也好&#xff0c;筛选出来9款产品&#xff0c;这里也分享给关注我的小伙伴 &#xff0c;希望对你有些帮助&#xff0c;如果你更好的产品推荐&#xff0c;欢迎留言给我。 即刻 产品经理的聚集地&#xff0c;“让…...

在Linux系统中使用字符图案和VNC运行Qt Widgets程序

大部分服务器并没有GUI&#xff0c;运行的是基础的Linux系统&#xff0c;甚至是容器。如果我们需要在这些系统中运行带有GUI功能的Qt程序&#xff0c;一般情况下就会报错&#xff0c;比如&#xff1a; $ ./collidingmice qt.qpa.xcb: could not connect to display qt.qpa.plu…...

kafka使用常见问题

连接不上kafka,报下边的错 org.apache.kafka.common.KafkaException: Producer is closed forcefully.at org.apache.kafka.clients.producer.internals.RecordAccumulator.abortBatches(RecordAccumulator.java:760) [kafka-clients-3.0.2.jar:na]at org.apache.kafka.client…...

Springboot项目:使用MockMvc测试get和post接口(含单个和多个请求参数场景)

一、引入MockMvc依赖 使用MockMvc&#xff0c;必须要引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>二、具体演示…...

mysql_real_connect的概念和使用案例

mysql_real_connect 是 MySQL C API 中的一个函数&#xff0c;用于建立一个到 MySQL 数据库服务器的连接。这个函数尝试建立一个连接&#xff0c;并根据提供的参数进行连接设置。 概念 以下是 mysql_real_connect 函数的基本概念&#xff1a; 函数原型&#xff1a;MYSQL *my…...

单片机--51- RAM

1.概览某个51单片机对空间区域的划分&#xff1a; 2.RAM被分配的区域是256bytes&#xff0c; 通常8051单片机ram是128bytes 8052的ram是256bytes&#xff08;其中高128位的地址和sfr区域地址重合&#xff0c;物理区域不同&#xff09; extern uint32_t alarm_cnt_1; uint32…...

【机器学习】梯度下降

文章目录 1. 梯度下降概念2. 梯度下降的技巧2.1 动态设置学习率2.2 Adagrad调整梯度2.3 随机梯度下降&#xff08;SGD&#xff09;2.4 特征缩放 3. 梯度下降理论基础 1. 梯度下降概念 梯度&#xff1a;Loss 对参数在某一点的偏微分&#xff0c;函数沿梯度的方向具有最大的变化…...

攻防世界web第十题Web_python_template_injection

这是题目&#xff0c;从题目上看是一个python模板注入类型的题目。 首先测试是否存在模板注入漏洞&#xff0c;构造http://61.147.171.105:57423/{{config}} 得到 说明存在模板注入漏洞&#xff0c;继续注入 构造http://61.147.171.105:57423/{{‘’.class.mro}}: 得到 再构造…...

【《python爬虫入门教程11--重剑无峰168》】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 【《python爬虫入门教程11--selenium的安装与使用》】 前言selenium就是一个可以实现python自动化的模块 一、Chrome的版本查找&#xff1f;-- 如果用edge也是类似的1.chrome…...

VUE echarts 教程二 折线堆叠图

VUE echarts 教程一 折线图 import * as echarts from echarts;var chartDom document.getElementById(main); var myChart echarts.init(chartDom); var option {title: {text: Stacked Line},tooltip: {trigger: axis},legend: {data: [Email, Union Ads, Video Ads, Dir…...

gitlab的搭建及使用

1、环境准备 服务器准备 CentOS Linux release 7.9.2009 (Core)&#xff0c;内存至少4G。 修改主机名和配置ip地址 hostnamectl set-hostname <hostname> 关闭主机的防火墙 # 关闭防火墙 systemctl stop firewalld #临时关闭防火墙 systemctl disable firewalld …...

openEuler ARM使用vdbench50407

openEuler ARM 使用 vdbench50407 系统信息&#xff1a;openEuler 22.03 (LTS-SP4) Linux 5.10.0-216.0.0.115.oe2203sp4.aarch64 1. 软件包获取 vdbench src https://www.oracle.com/downloads/server-storage/vdbench-source-downloads.htmlvdbench bin https://www.oracle.…...

如何使用 JPA 实现分页查询并返回 VO 对象

JPA分页踩坑指南 1.原生sql查询返回vo类包含主键id&#xff0c;无法自动映射&#xff0c;需要用到投影ResultTransformer&#xff0c;所以我定义了一个投影工具类 JpaCommonService 2.异步调用原生查询方法的时候&#xff0c;需要用 NativeQuery<?> query entityMa…...

【SQL Server】教材数据库(1)

1 利用sql建立教材数据库&#xff0c;并定义以下基本表&#xff1a; 学生&#xff08;学号&#xff0c;年龄&#xff0c;性别&#xff0c;系名&#xff09; 教材&#xff08;编号&#xff0c;书名&#xff0c;出版社编号&#xff0c;价格&#xff09; 订购&#xff08;学号…...

cmake学习_incomplete

文章目录 cmake使用举例cmake示例模板编译时库查找基础知识模块模式导入目标 交叉编译配置基础知识模板实际使用 使用实例链接库解决符号冲突 参考资料 老规矩&#xff0c;先放官方文档 如何构建从互联网下载的源代码包:User Interaction Guide 想使用第三方库的开发者:Using …...

过度与动画的区别?

过渡&#xff08;Transition&#xff09;&#xff1a; 过渡效果是由元素的状态变化触发的&#xff0c;例如&#xff1a;当鼠标悬停在某个元素上、或当某个 CSS 属性值发生改变时。 必须指定起始状态和结束状态。过渡会在两者之间自动平滑过渡。 过渡的触发通常是用户交互或通过…...

tcpdump指南(1)

大家读完觉得有意义记得关注和点赞&#xff01;&#xff01;&#xff01; tcpdump是一种在网络上转储流量的网络工具。 这篇文章服务器作为一些常用命令的指南。如需完整指南&#xff0c; 请参阅手册页&#xff0c;或在 Linux 计算机上。man tcpdump 1 基本选项 帮助摘要&#…...

Linux(Centos 7.6)网卡信息没有了问题处理

1.问题现象 虚拟机打开后&#xff0c;使用ifconfig查看IP信息&#xff0c;虚拟机默认的网卡名称是ens33&#xff0c;ifconfig没有看到相关问题&#xff0c;远程连接工具Xshell也不能正常访问该虚拟机。 [rootnode1 ~]# ifconfig lo: flags73<UP,LOOPBACK,RUNNING> mtu…...

基于SpringBoot的校园二手交易平台的设计与实现(源码+SQL+LW+部署讲解)

文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…...

springboot523基于Spring Boot的大学校园生活信息平台的设计与实现(论文+源码)_kaic

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本大学校园生活信息平台就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据…...

week05_nlp大模型训练·词向量文本向量

1、词向量训练 1.1 CBOW&#xff08;两边预测中间&#xff09; 一、CBOW 基本概念 CBOW 是一种用于生成词向量的方法&#xff0c;属于神经网络语言模型的一种。其核心思想是根据上下文来预测中心词。在 CBOW 中&#xff0c;输入是目标词的上下文词汇&#xff0c;输出是该目标…...

FreeRTOS Lwip Socket APi TCP Server 1对多

源文件 /********************************************************************************* file lwip_tcp_driver.cpp* brief TCP Server implementation using LwIP******************************************************************************* at…...

SonarQube相关的maven配置及使用

一、maven 全局配置 <settings><pluginGroups><pluginGroup>org.sonarsource.scanner.maven</pluginGroup></pluginGroups><profiles><profile><id>sonar</id><activation><activeByDefault>true</acti…...

【蓝桥杯选拔赛真题87】python输出字符串 第十五届青少年组蓝桥杯python选拔赛真题 算法思维真题解析

目录 python输出字符串 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python输出字符串 第十五届蓝桥杯青少年组python比赛选拔赛真题详细解析…...

嵌入式开发中的机器人表情绘制

机器人的表情有两种&#xff0c;一种是贴图&#xff0c;一钟是调用图形API自绘。 贴图效果相对比较好&#xff0c;在存储空间大的情况下是可以采用的。 自绘比较麻烦&#xff0c;但在资源和空缺少的情况下&#xff0c;也是很有用的。而且自绘很容易通过调整参数加入随机效果&…...

本机实现Llama 7B推理及部署

本机实现Llama 7B推理及部署 使用llamafile在Windows系统部署 部署步骤:首先从https://www.modelscope.cn/api/v1/models/bingal/llamafile-models/repo?Revision=master&FilePath=llamafile-0.6.2.win.zip下载llamafile并解压得到llamafile.exe文件, 再从https://www.…...

HarmonyOS NEXT 实战之元服务:静态案例效果---我的热门应用服务

背景&#xff1a; 前几篇学习了元服务&#xff0c;后面几期就让我们开发简单的元服务吧&#xff0c;里面丰富的内容大家自己加&#xff0c;本期案例 仅供参考 先上本期效果图 &#xff0c;里面图片自行替换 效果图1完整代码案例如下&#xff1a; Index import { authentica…...

二十三种设计模式-工厂方法模式

工厂方法模式是一种创建型设计模式&#xff0c;其核心思想是通过定义一个创建对象的接口&#xff0c;让子类决定实例化哪一个类。工厂方法模式将对象的实例化推迟到子类中进行&#xff0c;从而使得扩展变得容易&#xff0c;而不需要修改现有的代码&#xff0c;符合开闭原则&…...

硬件工程师面试题 21-30

把常见的硬件面试题进行总结&#xff0c;方便及时巩固复习。其中包括网络上的资源、大佬们的大厂面试题&#xff0c;其中可能会题目类似&#xff0c;加强印象即可。 更多硬件面试题&#xff1a;硬件工程师面试题 1-10硬件工程师面试题 11-20 21、单片机最小系统需要什么&#x…...

深度学习中的HTTP:从请求到响应的计算机网络交互

在现代深度学习应用中&#xff0c;HTTP&#xff08;超文本传输协议&#xff09;不仅仅是网页浏览的基础协议&#xff0c;它也在机器学习和人工智能的服务架构中扮演着至关重要的角色。本文将深入探讨HTTP在深度学习中的应用&#xff0c;并阐明它如何支持模型的训练、推理及API服…...

基于submitit实现Python函数的集群计算

一、项目介绍 Submitit是一款轻量级工具&#xff0c;旨在简化Python函数在Slurm集群上的提交过程。它不仅提供了对作业结果、日志文件等的无缝访问&#xff0c;更让开发者能够在本地执行与Slurm集群间切换自如&#xff0c;极大地提高了代码的可移植性和灵活性。 Slurm作为一种…...

开源GTKSystem.Windows.Forms框架:C# Winform跨平台运行深度解析

开源GTKSystem.Windows.Forms框架&#xff1a;C# Winform跨平台运行深度解析 一、跨平台框架的崛起 1.1 跨平台技术的现状与需求 在当今快速发展的科技时代&#xff0c;软件开发的需求日益多样化。随着移动设备和操作系统的不断涌现&#xff0c;开发者面临着前所未有的挑战&…...

uniapp Stripe 支付

引入 Stripe npm install stripe/stripe-js import { loadStripe } from stripe/stripe-js; Stripe 提供两种不同类型组件 Payment Element 和 Card Element&#xff1a;如果你使用的是 Payment Element&#xff0c;它是一个更高级别的组件&#xff0c;能够自动处理多种支…...

虚拟机用网线连其他设备(ROS多机网络配置)

电脑配置 把局域网的网线插入电脑&#xff0c;点击这边 配置以太网的IP 比如说我ROS主机的IP想设为192.168.144.10&#xff0c;那我笔记本的以太网IP可以设为192.168.144.8。 假设还有另外一个电脑&#xff08;ROS从机&#xff09;&#xff0c;他的IP被设置未192.168.144.4…...

20241218-信息安全理论与技术复习题

20241218-信息安全理论与技术复习题 一、习题1 信息安全的基本属性是&#xff08;D )。 A、机密性 B、可用性 C、完整性 D、上面 3 项都是 “会话侦听和劫持技术” 是属于&#xff08;B&#xff09;的技术。 A、 密码分析还原 B、 协议漏洞渗透 C、 应用漏洞分析与渗透 D、 D…...

家谱管理系统|Java|SSM|VUE| 前后端分离

【技术栈】 1⃣️&#xff1a;架构: B/S、MVC 2⃣️&#xff1a;系统环境&#xff1a;Windowsh/Mac 3⃣️&#xff1a;开发环境&#xff1a;IDEA、JDK1.8、Maven、Mysql5.7 4⃣️&#xff1a;技术栈&#xff1a;Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库…...

音频进阶学习九——离散时间傅里叶变换DTFT

文章目录 前言一、DTFT的解释1.DTFT公式2.DTFT右边释义1&#xff09; 复指数 e − j ω n e^{-j\omega n} e−jωn2&#xff09;序列与复指数相乘 x [ n ] ∗ e − j ω n x[n]*e^{-j\omega n} x[n]∗e−jωn复指数序列复数的共轭正交正交集 3&#xff09;复指数序列求和 3.DTF…...