本系列为笔者学习Javase的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员Java+AI智能辅助编程全套视频教程,java零基础入门到大牛一套通关》,章节分布参考视频教程,为同样学习Javase系列课程的同学们提供参考。

01 缓冲字节流

在这里插入图片描述

BufferedInputstream缓冲字节输入流可以提高字节输入流读取数据的性能。

在这里插入图片描述

在这里插入图片描述

InputStream fis = new FileInputStream(srcPath);
InputStream bis = new BufferedInputStream(fis); //我勒个偷天换日

02 缓冲字符流

在这里插入图片描述

BufferedReader缓冲字符输入流自带8K(8192)的字符缓冲池,可以提高字符输入流读取字符数据的性能。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Reader fr = new FileReader("day03-file-io\\src\\dlei08.txt");
Reader br = new BufferedReader(fr);//一行一行读
System.out.println(br.readline());//循环版 一行一行读
String line;
while((line = br.readline()) != null){System.out.println(line);
}

注:优雅,实在是太优雅了!

BufferedWriter缓冲字符输出流自带8K的字符缓冲池,可以提高字符输出流写字符数据的性能。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Writer fw = new FileWriter("day03-file-io/src/dlei07-out.txt", true);
BufferedWriter bw = new BufferedWriter(fw);bw.newLine(); //换行

注:Shift + F6召唤全文筛选 + 替换。

03 案例:复制文言文

需求: 将文言文《出师表》的文章顺序进行恢复到一个新文件中。

分析:

在这里插入图片描述

package FileDemo;import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;public class Test {public static void main(String[] args) {//目标:复制文言文//1.创建缓冲字符输入流管道try (BufferedReader br = new BufferedReader(new FileReader("0416-oop\\src\\FileDemo\\chushibiao.txt"));BufferedWriter bw = new BufferedWriter(new FileWriter("0416-oop\\src\\FileDemo\\chushibiao2.txt"));) {//2.创建List集合,按行读取数据并排序List<String> data = new ArrayList<>();String line;while((line = br.readLine()) != null){data.add(line);}Collections.sort(data);System.out.println(data);//3.遍历List集合,按行输出数据for(String s : data){bw.write(s);bw.newLine(); //换行}System.out.println("执行完毕!");}catch (Exception e){e.printStackTrace();}}
}

04 字符输入转换流

在这里插入图片描述

InputStreamReader(字符输入转换流) 解决不同编码时,字符流读取文本内容乱码的问题。

先获取文件的原始字节流,再将其按真实的字符集编码转成字符输入流,这样字符输入流中的字符就不乱码了。

在这里插入图片描述

05 IO 框架

什么是框架?

框架(Framework)是一个预先写好的代码库或一组工具,旨在简化和加速开发过程,一般是把类、接口等编译成class形式,再压缩成一个jar结尾的文件发行出去。

在这里插入图片描述

什么是IO框架?

IO框架封装了Java提供的对文件、数据进行操作的代码,对外提供了更简单的方式来对文件进行操作,对数据进行读写等。

导入步骤:

  • 在项目中创建一个文件夹:lib
  • commons-io-2.6.jar文件复制到lib文件夹
  • jar文件上点右键,选择Add as Library ->点击OK
  • 在类中导包使用

Commons-io框架

Commons-ioapache开源基金组织提供的一组有关IO操作的小框架,目的是提高IO流的开发效率。

在这里插入图片描述

06 案例:完善石头迷阵游戏中的历史最少步骤信息展示

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/81257.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/81257.shtml
英文地址,请注明出处:http://en.pswp.cn/web/81257.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器操作系统调优内核参数(方便查询)

fs.aio-max-nr1048576 #此参数限制并发未完成的异步请求数目&#xff0c;应该设置避免I/O子系统故障 fs.file-max1048575 #该参数决定了系统中所允许的文件句柄最大数目&#xff0c;文件句柄设置代表linux系统中可以打开的文件的数量 fs.inotify.max_user_watches8192000 #表…

[Windows] 格式工厂 FormatFactory v5.20.便携版 ——多功能媒体文件转换工具

想要轻松搞定各类媒体文件格式转换&#xff1f;这款 Windows 平台的格式工厂 FormatFactory v5.20 便携版 正是你的不二之选&#xff01;无需安装&#xff0c;即开即用&#xff0c;为你带来高效便捷的文件处理体验。 全能格式转换&#xff0c;满足多元需求 软件功能覆盖视频、…

[AI]主流大模型、ChatGPTDeepseek、国内免费大模型API服务推荐(支持LangChain.js集成)

主流大模型特色对比表 模型核心优势适用场景局限性DeepSeek- 数学/代码能力卓越&#xff08;GSM8K准确率82.3%&#xff09;1- 开源生态完善&#xff08;支持医疗/金融领域&#xff09;7- 成本极低&#xff08;API价格仅为ChatGPT的2%-3%&#xff09;5科研辅助、代码开发、数据…

国际荐酒师(香港)协会亮相新西兰葡萄酒巡展深度参与赵凤仪大师班

国际荐酒师&#xff08;香港&#xff09;协会率团亮相2025新西兰葡萄酒巡展 深度参与赵凤仪MW“百年百碧祺”大师班 广州/上海/青岛&#xff0c;2025年5月12-16日——国际荐酒师&#xff08;香港&#xff09;协会&#xff08;IRWA&#xff09;近日率专业代表团出席“纯净独特&…

Node.js Express 项目现代化打包部署全指南

Node.js Express 项目现代化打包部署全指南 一、项目准备阶段 1.1 依赖管理优化 # 生产依赖安装&#xff08;示例&#xff09; npm install express mongoose dotenv compression helmet# 开发依赖安装 npm install nodemon eslint types/node --save-dev1.2 环境变量配置 /…

java基础知识回顾3(可用于Java基础速通)考前,面试前均可用!

目录 一、基本算数运算符 二、自增自减运算符 三、赋值运算符 四、关系运算符 五、逻辑运算符 六、三元运算符 七、 运算符的优先级 八、小案例&#xff1a;在程序中接收用户通过键盘输入的数据 声明&#xff1a;本文章根据黑马程序员b站教学视频做的笔记&#xff0c;可…

随机密码生成器:原理、实现与应用(多语言实现)

在当今数字化的时代&#xff0c;信息安全至关重要。而密码作为保护个人和敏感信息的第一道防线&#xff0c;其安全性直接关系到我们的隐私和数据安全。然而&#xff0c;许多人在设置密码时往往使用简单、易猜的组合&#xff0c;如生日、电话号码或常见的单词&#xff0c;这使得…

TypeScript 泛型讲解

如果说 TypeScript 是一门对类型进行编程的语言&#xff0c;那么泛型就是这门语言里的&#xff08;函数&#xff09;参数。本章&#xff0c;我将会从多角度讲解 TypeScript 中无处不在的泛型&#xff0c;以及它在类型别名、对象类型、函数与 Class 中的使用方式。 一、泛型的核…

SQL 每日一题(6)

继续做题&#xff01; 原始表&#xff1a;employee_resignations表 employee_idresignation_date10012022-03-1510022022-11-2010032023-01-0510042023-07-1210052024-02-28 第一题&#xff1a; 查询累计到每个年度的离职人数 结果输出&#xff1a;年度、当年离职人数、累计…

工业RTOS生态重构:从PLC到“端 - 边 - 云”协同调度

一、引言 在当今数字化浪潮席卷全球的背景下&#xff0c;工业领域正经历着深刻变革。工业自动化作为制造业发展的基石&#xff0c;其技术架构的演进直接关系到生产效率、产品质量以及企业的市场竞争力。传统的PLC&#xff08;可编程逻辑控制器&#xff09;架构虽然在工业控制领…

从版本控制到协同开发:深度解析 Git、SVN 及现代工具链

前言&#xff1a;在当今软件开发的浪潮中&#xff0c;版本控制与协同开发无疑扮演着举足轻重的角色。从最初的单兵作战到如今大规模团队的高效协作&#xff0c;一套成熟且得力的版本控制系统以及围绕其构建的现代工具链&#xff0c;已然成为推动软件项目稳步前行的关键引擎。今…

Visual Studio Code插件离线安装指南:从市场获取并手动部署

Visual Studio Code插件离线安装指南&#xff1a;从市场获取并手动部署 一、场景背景二、操作步骤详解步骤1&#xff1a;访问官方插件市场步骤2&#xff1a;定位目标版本步骤3&#xff1a;提取关键参数步骤4&#xff1a;构造下载链接步骤5&#xff1a;下载与安装 三、注意事项 …

用HTML5实现实时ASCII艺术摄像头

用HTML5实现实时ASCII艺术摄像头 项目简介 这是一个将摄像头画面实时转换为ASCII字符艺术的Web应用&#xff0c;基于HTML5和原生JavaScript实现。通过本项目可以学习到&#xff1a; 浏览器摄像头API的使用Canvas图像处理技术实时视频流处理复杂DOM操作性能优化技巧 功能亮点…

论文审稿之我对SCI写作的思考

有幸被邀请审过二区、三区、四区期刊的论文&#xff0c;近期审稿10余篇&#xff0c;分享一下我从一个审稿人的角度出发&#xff0c;如何提升自己写作的质量。 作图高清和好看&#xff0c;永远是排第一位。图中的字要清晰&#xff0c;有的放大200%还看不清字&#xff1b;每幅图的…

MLA:Transformer的智能变形金刚——解密多头潜在注意力的进化密码

第一章 MLA的进化之路&#xff1a;从MHA到智能变形 1.1 变形金刚的诞生背景 当LLM模型规模突破万亿参数量级时&#xff0c;传统Transformer的注意力机制开始显现"成长的烦恼"&#xff1a;训练阶段计算密集、推理阶段内存吃紧。DeepSeek团队的MLA如同给注意力模块装…

电子电路:电学都有哪些核心概念?

电子是基本粒子,带负电荷。电荷是物质的一种属性,电子带有负电荷,而质子带有正电荷。电荷的单位是库仑。 电流呢,应该是指电荷的流动,单位是安培,也就是库仑每秒。所以电流其实就是电荷在导体中的移动形成的。比如,当电子在导线中流动时,就形成了电流。不过要注意,传…

第三次中医知识问答模型微调

本次参数 llamafactory-cli train \ --stage sft \ --do_train True \ --model_name_or_path /home/qhyz/zxy/LLaMA-Factory/model \ --preprocessing_num_workers 16 \ --finetuning_type lora \ --template deepseek3 \ --flash_attn fa2 \ --dataset_dir data \ --dataset …

leetcode2081. k 镜像数字的和-hard

1 题目&#xff1a;k 镜像数字的和 官方标定难度&#xff1a;难 一个 k 镜像数字 指的是一个在十进制和 k 进制下从前往后读和从后往前读都一样的 没有前导 0 的 正 整数。 比方说&#xff0c;9 是一个 2 镜像数字。9 在十进制下为 9 &#xff0c;二进制下为 1001 &#xff…

计算机网络学习(七)——IP

一、IP 在计算机网络中&#xff0c;IP&#xff08;Internet Protocol&#xff0c;网际协议&#xff09;是网络层的核心协议&#xff0c;用于实现跨越不同网络的数据包传输。IP 是 TCP/IP 协议族的核心部分&#xff0c;属于网络层协议&#xff0c;也是 Internet 赖以运作的基础…

【技术追踪】ADDP:通过交替去噪扩散过程学习用于图像识别和生成的通用表示(ICLR-2024)

扩散模型交替去噪&#xff1a;助力图像识别与图像生成~ 论文&#xff1a;ADDP: Learning General Representations for Image Recognition and Generation with Alternating Denoising Diffusion Process 代码&#xff1a;https://github.com/ChangyaoTian/ADDP 0、摘要 图像识…