大數據

30+視頻&10+案例縱橫文件與IO領域 | Java開發者高級應用站

點擊查看視頻課程

一個程序的建立往往需要達到某些信息交換的目的,反映在計算機上就是文件之間的交流。我們的程序是怎樣操作文件的?我們又該怎樣從文件中讀取和寫入數據呢?快來這裡一探究竟吧!

Java是通過File類與其完善的IO流相關基類完成的數據交換工作,在這裡,你將從無到有,一步步瞭解、熟悉並掌握文件IO的相關開發能力,通過實戰驗證所得,在Java文件領域中打下一個堅實的基礎。

Flie類-踏入文件的領域

當開發程序到一定程度時,我們的程序必定會與文件打交道,本節將簡單介紹File類的相關內容。

【本節目標】
通過閱讀本節內容,你將初步認識File類的基本功能,學會如何在Java中如何創建一個文件,並可以解決創建文件過程中可能遇到的問題。

在Java語言裡面提供有對於文件操作系統操作的支持,而這個支持就在java.io.File類中進行了定義,也就是說在整個java.io包裡面,File類是唯一一個與文件本身操作(創建、刪除、重命名等)有關的類。如果要進行File的操作,必須要提供有完整的路徑,而後可以調用相應的方法進行處理。

點擊學習>>

深入瞭解File類,勘破文件操作

瞭解了File類提供的幾個基本功能後,我們還需要注意一些問題,比如文件路徑分隔符、JVM文件處理流程、創建時路徑注意事項等,本節將一一介紹。

【本節目標】
通過閱讀本節內容,你將瞭解到不同的操作系統中的路徑的編寫方式、注意到文件操作過程中文件名應當儘可能避免重複,掌握創建單級目錄和多級目錄的方法,保證上級路徑的存在性。

點擊學習>>

藉助File類瞭解文件的內在美

前幾節中我們瞭解瞭如何進行文件級的相關操作,現在讓我們走進文件,藉助File類提供的其他方法,瞭解文件的內部信息吧。

【本節目標】
通過閱讀本節內容,你將結合具體代碼,實操File類的各種獲取文件信息的方法,瞭解可以通過File類獲取到哪些信息,初步掌握文件內部信息的獲取方式。

點擊學習>>

教你使用File類列出目錄所有文件

學完了File類對文件的相關基本操作,現在我們來做一個列出指定目錄中全部文件的案例,來進一步熟悉File類吧。

【本節目標】
通過閱讀本節內容,你將結合之前所學,通過File對象的狀態查詢實現目錄/文件的判斷,並進一步藉助其他方法列出目錄中的全部文件。

點擊實踐>>

教你使用File類批量修改文件名稱

在上一節中我們實操File類,完成了對目錄中文件的列出、判空清除操作,本節將接續上一節案例,實現對文件命名的批量修改。

【本節目標】
通過閱讀本節內容,你將進一步掌握File類的相關方法,瞭解文件名稱編輯的一些常見套路,實現指定目錄下的文件名的批量修改操作。

點擊實踐>>

文件I/O:初識流的概念

在Java標準包中與文件有直接關係的只有File類,但File類只能操作文件本身,其內部的數據是無法處理的,這時就要用到流的概念,本節將為讀者介紹I/O流的相關知識。

【本節目標】
通過閱讀本節內容,你將瞭解到操作文件內數據需要用到的技術,初步認識字節流、字符流中涉及到的幾個類,掌握文件流處理的基本步驟。

點擊學習>>

字節輸出流之OutputStream

瞭解了文件I/O的基本知識後,本節將為讀者展示字節輸出流的總類OutputStream,現在讓我們來一起了解一下它的相關定義和相關繼承關係等信息吧。

【本節目標】
通過閱讀本節內容,你將瞭解OutputStream抽象類的相關內容,瞭解到其對應內容的繼承關係,認識類中聲明的幾種方法具有的功能。

點擊學習>>

使用FileOutputStream將數據寫入文件

上一節中我們瞭解了OutputStream的相關知識,現在讓我們來一起使用其子類FileOutputStream來實現對文件內容的寫入操作吧。

【本節目標】
通過閱讀本節內容,你將瞭解到FileOutputStream類對象的幾種構造方式,結合具體實例實現對文件內容的寫入功能,並有意識的去關閉流對象節省系統資源。

點擊學習>>

有出有入:使用字節輸入流

上一節中我們學習了字節輸出流OutputStream,與之對應的還有字節輸入流InputStream,本節將為讀者詳細介紹字節輸入流相關內容與使用FileInputStream讀取文件內容。

【本節目標】
通過閱讀本節內容,你將瞭解InputStream接口相關的內容,通過幾組示例圖直觀深刻地理解字節輸入流的工作原理,學會使用FileInputStream讀取文件內容。

點擊學習>>

秒懂字符輸出流:Writer

在前幾節中我們瞭解了字節輸出流和字節輸入流的相關定義和使用方法,但在程序運行過程中不難發現往往字符級別的操作更為常見,所以Java在JDK1.1時推出了字符流,本節將介紹字符輸出流Writer。

【本節目標】
通過閱讀本節內容,你將瞭解字符輸出流Writer類的基本定義和繼承關係圖,瞭解其內的各種方法的功能,並學會使用字符輸出流實現數據寫入功能。

點擊學習>>

掌握字符輸入流:Reader

學習過字符輸出流相關的內容後,本節將為讀者介紹與之對應的字符輸入流的相關內容和使用方法。

【本節目標】
通過閱讀本節內容,你將瞭解字符輸入流Reader類的基本定義和繼承關係圖,瞭解其內的各種方法的功能,深刻理解字符流為中文數據處理帶來的便利性,學會使用字符輸入流實現數據讀取功能。

點擊學習>>

一雙慧眼識別字節/字符流區別

Java文件IO操作中常用的流處理類的基本信息和相關操作我們已經全部瞭解過,現在讓我們來通過輸出操作的複習總結概況字節流和字符流之間的區別吧。

【本節目標】
通過閱讀本節內容,你將瞭解到OutputStream和Writer之間的不同,認識到輸出過程中的緩衝區的存在,並能夠通過對緩衝取得一些操作實現一些需求,深刻理解字符流和字節流適用於不同的使用場景。

點擊學習>>

藉助轉換流打通字節/字符流的關聯

由於字節流和字符流各有各的優勢,在大多數場景中我們往往可以使用轉換流InputStreamReader和OutputStreamWriter實現兩類流式數據的相互轉換,本節將為讀者詳細介紹轉換流。

【本節目標】
通過閱讀本節內容,你將瞭解InputStreamReader和OutputStreamWriter兩個類的相關內容和使用方法,並對其各個類之間的繼承關係有一個比較清晰的理解,學會使用轉換類完成字節流和字符流的相關轉換。

點擊學習>>

實戰文件流,完成文件拷貝

學習完基本的文件IO操作,本節將結合文件拷貝案例,實操代碼,與讀者一起一步步完成文件拷貝、文件夾拷貝等功能。

【本節目標】
通過閱讀本節內容,你將從需求分析開始,到方案提出,再到具體實現,一步步完成文件拷貝的功能,並同時瞭解到JDK1.9為開發此類功能提供的轉存方法的使用辦法,完成文件、文件夾拷貝功能的開發。

點擊實踐>>

教你用不同的編碼標準解碼字符

在Java開發過程中,有時會發現自己曾經的代碼裡漢字部分變成了奇形怪狀的字符,這往往是由於字符的編碼解碼標準不統一引起的,本節將為讀者介紹幾種常用的編碼標準。

【本節目標】
通過閱讀本節內容,你將瞭解到幾種常見的編碼標準與其表達能力,知道UTF-8是最常用的編碼標準,並能夠通過代碼查看機器的屬性,學會強制使用指定的編碼標準對數據進行編碼或解碼。

點擊學習>>

運用內存操作流實現IO操作

文件操作流能夠實現對文件內容的讀寫操作,若是碰到了不希望產生文件的IO操作,顯然是不能實現的,此時就需要用到內存操作流程。本節將為讀者介紹內存操作流的相關知識。

【本節目標】
通過閱讀本節內容,你將進一步瞭解到IO流操作的過程,瞭解到內存操作流相關類的繼承體系,並能夠藉助這些類實現以內存為終端的IO操作。

點擊學習>>

使用管道流構建線程信息通道

在之前學習的幾種IO流中不難發現,它們在面對線程間通信問題的時候顯然無法實現IO操作,這時需要用到本節介紹的管道流來進行處理。

【本節目標】
通過閱讀本節內容,你將瞭解到幾種管道流實現類的繼承關係及其相關方法的功能,並結合實例代碼實現線程間的數據通信工作。

點擊學習>>

“一目十行”的RandomAccessFile類

傳統的IO操作在面對超大型文件時進行讀取和分析明顯不能很好地完成,本節將為讀者介紹java.io為開發者提供的課跳躍式讀取文件內容的RandomAccessFile類。

【本節目標】
通過閱讀本節內容,你將大致瞭解到RandomAccessFile類的作用與其處理超大型文件時的優勢,瞭解其工作原理,學會使用類內提供的方法實現對文件的跳躍式讀取和保存功能。

點擊學習>>

“有限”的OutputStream

在日常開發中,Java的標準包有時只能滿足開發使用的最低標準,OutputStream便是如此。本節將為讀者介紹針對OutputStream類進行自定義開發實現優化輸出功能的方法。

【本節目標】
通過閱讀本節內容,你將瞭解到OutputStream在輸出操作方面有限的功能,瞭解到“裝飾設計模式”的基本思想,學會通過對OutputStream類的定製完成對輸出操作的優化。

點擊學習>>

使用打印流優化數據輸出

為了彌補原始的OutputStream功能的不足,java.io包為開發者提供了打印流:PrintStream類和PrintWriter類,本節將為讀者介紹其基本內容和使用方法。

【本節目標】
通過閱讀本節內容,你將瞭解到打印流相關類的相關定義和繼承關係,瞭解其相關功能,學會使用打印流實現數據的簡單輸出和格式化輸出的功能。

點擊學習>>

System類助力標準IO實現

在我們日常的生活中,計算機與我們的溝通主要是通過顯示器和鍵鼠設備來完成的,而在Java中,顯示器的輸出功能和鍵鼠設備的輸入功能則是依賴於System類的支持,本節將介紹它的相關內容。

【本節目標】
通過閱讀本節目標:你將瞭解到System類針對IO功能提供的三大系統常量in、out和err的功能和使用方法,學會使用這幾個方法實現鍵盤輸入功能和顯示器輸出功能。

點擊學習>>

使用緩衝輸入流優化數據輸入能力

本節將為讀者介紹緩衝字符輸入流BufferedReader類,並向讀者介紹使用緩衝流的一些數據輸入方面的優點。

【本節目標】
通過閱讀本節內容,你將先瞭解到BufferedReader的繼承關係,並瞭解到其核心方法readLine在數據輸入方面帶來的便利性,學會使用BufferedReader類實現鍵盤數據的輸入和處理工作。

點擊學習>>

使用Scanner類完成數據輸入

Scanner類是JDK1.5以後出現的用於解決輸入流處理問題的程序類,在整體設計上優於之前版本的BufferedReader類,本節將詳細介紹Scanner類的相關內容。

【本節目標】
通過閱讀本節內容,你將瞭解到Scanner類內提供的相關方法及其功能,學會使用Scanner類輸入字符串、數字、生日等信息以及使用Scanner類讀取文件信息,對程序IO擁有一個較為全面的認識。

點擊學習>>

使用Serializable實現類對象序列化能力

在這個處處充斥著互聯網信息的世界,無時無刻都在發生著信息、數據的傳遞,為了高效的、準確的使發送端和接收端之間能夠正確識別數據內容,本節將介紹對象序列化接口Serializable的相關內容。

【本節目標】
通過閱讀本節內容,你將瞭解到對象序列化接口Serializable的基本原理、作用及其實現方法,能夠通過實現Serializable接口聲明類對象的序列化能力。

點擊學習>>

教你快速實現類對象的序列化/反序列化

上一節中我們通過在類中實現Serializable聲明該類能夠序列化,本節將帶領讀者藉助ObjectOutputStream類和ObjectInputStream類實現對象的序列化和反序列化。

【本節目標】
通過閱讀本節內容,你將瞭解到ObjectOutputStream類和ObjectInputStream類的定義、相關方法等內容,並結合實例實現對類對象的序列化輸出和反序列化讀取的操作,同時瞭解其使用方面的部分限制。

點擊學習>>

transient:將屬性脫離序列化

transient關鍵字是類似於static、final等關鍵字的修飾符,它可以使類中的屬性在序列化時跳過該屬性,本節將為讀者介紹其相關內容與用法。

【本節目標】
通過閱讀本節內容,你將瞭解到transient關鍵字的功能及使用方法,理解其出現的原因,並能在有相關需求時使用transient關鍵字對類內屬性進行修飾使其跳過序列化。

點擊學習>>

IO實戰篇:數字大小比較

本節將帶著讀者開發實際案例,實現對輸入的數字大小的比較功能,並求出所輸數字的最大值和最小值。

【本節目標】
通過閱讀本節內容,你將複習Scanner的相關知識,結合工廠模式,編寫數字處理相關接口並完成實現,最終實現求出輸入的三個數字的最大值和最小值的功能。

點擊實踐>>

IO實戰篇:文件保存

本節將帶著讀者開發實際案例,複習File類和文件流的相關基本知識,實現對文件的新建和內容保存等操作。

【本節目標】
通過閱讀本節內容,你將複習File類和文件流的相關知識,結合工廠模式,編寫適當的接口和工具類實現對用戶輸入界面的一些優化,完成文件的相關操作與內容保存功能。

點擊實踐>>

IO實戰篇:字符串逆序顯示

本節將帶著讀者開發實際案例,結合Arrays類和StringBuffer類,實現對字符串的逆序輸出操作。

【本節目標】
通過閱讀本節內容,你將複習Arrays類和StringBuffer類的相關知識,與之前的案例設計模式一樣,通過簡單的控制檯菜單設計和工廠模式完成對輸入字符串的追加輸入和逆序顯示功能。

點擊實踐>>

IO實戰篇:數據排序處理

節將帶著讀者開發實際案例,以簡單基類為單位,結合Comparable接口、工廠設計模式實現對數據的排序功能。

【本節目標】
通過閱讀本節內容,你將複習基類創建、Comparable接口的實現、Arrays類的使用等知識,結合新學的輸入輸出相關方法,編寫相關接口與工廠類,初步完成對象類型數據的排序處理功能。

點擊實踐>>

IO實戰篇:數據排序處理深入

在上一節中我們實現了簡單的輸入一些數據並完成數據排序處理的功能,本節將進一步開發,使其實現將數據保存進文件並進行顯示的功能。

【本節目標】
通過閱讀本節內容,你將繼續複習文件IO的相關內容,結合其他相關知識,對數據進行嚴格的結構化約束輸入後實現數據的正確的處理,進而實現將數據保存進文件並能夠全部顯示的功能。

點擊實踐>>

IO實戰篇:奇偶數統計

在前幾節中我們實戰了很多案例,本節將帶著讀者開發一個較為簡單的實際案例,實現對輸入的數字的奇偶數字的出現次數的統計功能。

【本節目標】
通過閱讀本節內容,你將進一步複習Service接口的相關內容及其實現方法,進一步掌握工廠類的寫法,理解其作用與功能,編寫相關代碼實現對奇偶數字的統計功能。

點擊實踐>>

IO實戰篇:用戶登錄

本節將帶領讀者實戰用戶登錄功能,通過輸入指定的用戶名和密碼簡單實現用戶登錄功能來進一步掌握IO相關的知識和其他基本知識。

【本節目標】
通過閱讀本節內容,你將複習到String一些基礎的操作,進一步掌握數據輸入的方法,簡單瞭解用戶登錄功能的基本原理和實現過程,以及程序開發過程中的代理思想。

點擊實踐>>

IO實戰篇:投票選舉

通過前幾節的實戰,相信讀者已經對實現java功能的基本開發過程有了一個十分清晰的理解,最後,讓我們“重操舊業”,使用student類實戰投票選舉的功能。

【本節目標】
通過閱讀本節內容,你將通過對Student類的擴展開發,複習Conparable比較相關的內容,實現排序功能以及投票數據的精確增長,結合程序菜單的設計,最終完成投票選舉的功能。

點擊實踐>>

持續更新...
更多Java開發課程盡在Java開發者

Leave a Reply

Your email address will not be published. Required fields are marked *