Javase 基礎加強 —— 09 IO流第二彈

本系列為筆者學習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、摘要 圖像識…