亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java全面解析IO流相關知識

 更新時間:2021年08月30日 15:09:20   作者:lnwd___  
這篇文章主要介紹了IO流相關知識,包括File,字節(jié)流,字符流,特殊操作流(標準輸入流,標準輸出流,對象序列化與反序列化,properties與IO流結合)相關知識的總結

IO流相關知識(File,字節(jié)流,字符流,特殊操作流(標準輸入流,標準輸出流,對象序列化與反序列化,properties與IO流結合))相關知識總結

前言

流是一種抽象概念,它代表了數(shù)據(jù)的無結構化傳遞。按照流的方式進行輸入輸出,數(shù)據(jù)被當成無結構的字節(jié)序或字符序列。從流中取得數(shù)據(jù)的操作稱為提取操作,而向流中添加數(shù)據(jù)的操作稱為插入操作。用來進行輸入輸出操作的流就稱為IO流。換句話說,IO流就是以流的方式進行輸入輸出

一、File

1.File類的概述和構造方法

在這里插入圖片描述
在這里插入圖片描述

通過如上的圖相信對文件打的相關應用已經有了初步的認識,因為封裝的不是真正存在的文件,僅僅是一個路徑名而已,所以沒有那個路徑的文件也可以寫,不會報錯,將來是把不存在的轉換為具體存在的。

2.File類創(chuàng)建功能

在這里插入圖片描述

這里需要注意的是:不能根據(jù)目錄來判斷是創(chuàng)建的文件還是目錄,而是通過調用的方法來判斷的,路徑那個只是名字而已,文件和目錄的名字也不能是一樣的

3.File類判斷和獲取功能

在這里插入圖片描述

4.File類刪除功能

在這里插入圖片描述

注意:File的相關操作與字節(jié)流沒有繼承的關系,所以要刪除文件的話還是的用File的刪除功能才可

二、字節(jié)流

1.IO流的概述和分類

概述

在這里插入圖片描述

分類

在這里插入圖片描述

2.字節(jié)流寫數(shù)據(jù)

在這里插入圖片描述

記得一定要釋放資源

3.字節(jié)流寫數(shù)據(jù)的兩個小問題

字節(jié)流寫數(shù)據(jù)如何換行

在這里插入圖片描述

不同的操作系統(tǒng)的換行是不一樣的

字節(jié)流寫數(shù)據(jù)如何實現(xiàn)追加寫入

在這里插入圖片描述

值得注意的是是在文件的后面添加,而原來的數(shù)據(jù)還是有的,所以在用的時候就要考慮一下是怎樣使用自己的文件的

4.字節(jié)流寫入數(shù)據(jù)假異常處理

在這里插入圖片描述

就是簡單的異常處理而已,如果不使用處理的話就拋出就可以了

5.字節(jié)流讀數(shù)據(jù)(重點)

一次讀一個字節(jié)的數(shù)據(jù)

在這里插入圖片描述

標準的代碼格式就是這樣的

在這里插入圖片描述

一次讀一個數(shù)組的數(shù)據(jù)

在這里插入圖片描述
在這里插入圖片描述

字節(jié)流讀數(shù)據(jù)其實很簡單,這里需要注意的是字節(jié)流讀數(shù)據(jù)的話可以有兩種方法,至于使用怎樣的方法就得取決于自己得使用就行了

6.字節(jié)緩沖流

在這里插入圖片描述
在這里插入圖片描述

7.如何選擇怎樣得數(shù)據(jù)讀取呢?

在這里插入圖片描述

從圖中可以看出字節(jié)緩沖流得讀取比基本得字節(jié)讀取要快很多,如果要節(jié)省時間得話就可以考慮用字節(jié)緩沖流來進行字節(jié)流得讀取

三、字符流

1.為什么會出現(xiàn)字符流?

在這里插入圖片描述

所以他的底層操作的實質還是字節(jié)流

編碼表

在這里插入圖片描述

這里需要注意的是用的什么編碼就必須用對應的解碼,否則就會出現(xiàn)亂碼的情況

2.字符串中的編碼解碼問題

在這里插入圖片描述
在這里插入圖片描述

3.如何實現(xiàn)解決編譯解碼的問題

在這里插入圖片描述

其實寫的時候是寫在了緩沖區(qū),并沒寫在文件里,可以刷新,也可以關閉流它會自動的刷新

代碼理解

在這里插入圖片描述

4.字符流寫數(shù)據(jù)的方法

在這里插入圖片描述

在這里插入圖片描述

5.字符流讀數(shù)據(jù)的方法

在這里插入圖片描述

在這里插入圖片描述

字節(jié)流與字符流的讀數(shù)據(jù)的思想是一樣的只不過一個是字符,一個是字節(jié)而已

6.字符流復制文件

其方法和字節(jié)流的方法一樣,只是一個是字節(jié)一個是字符而已
方法一:一個一個的字符進行的復制
方法二:一個字符數(shù)組一個字符數(shù)組的復制

準換流
OutputStreamWriter 他又一個子類是:FileWriter
InputStreamReader 它有一個子類是: FileReader
我們在復制文件等相關操作的時候可以用他的子類進行操作,書寫更加的簡單,但是,在進行編碼問題解決的時候還是得用轉換流才可以

7.字符緩沖流

在這里插入圖片描述
在這里插入圖片描述

字符緩沖流的特有功能

在這里插入圖片描述

那么可以做什么呢?
我們可以通過其中特有的功能進行文件的復制等
需要注意的是readline只是讀的是內容,不讀其他的

8.字節(jié),字符流小結

(此時有個使用的問題就是用哪兒文件的讀取就寫哪兒,寫在一起容易出問題,還有就是一定要釋放資源)
字節(jié)流

在這里插入圖片描述

字符流

在這里插入圖片描述

關于亂碼的問題
個人認為出現(xiàn)亂碼是因為如果用的是字節(jié)流的話用char來強制轉換顯示的話就是只有其中的一部分并沒有把一個漢字的那個文字表達組如(【-1,23,36】)表達完整,但是如果用new String()來顯示的話會表達完整(可能是里面有相應的方法,具體不清楚,知道就行了),如果用的是字符流的話就是用的默認的編碼以及你相應要求的編碼來表達,所以就不會出現(xiàn)亂碼的問題了

9.復制文件的異常處理

在這里插入圖片描述

在這里插入圖片描述

四、特殊操作流

1.標準輸入流

在這里插入圖片描述

在這里插入圖片描述

2.標準輸出流

在這里插入圖片描述
在這里插入圖片描述

3.打印流

字節(jié)打印流

在這里插入圖片描述
在這里插入圖片描述

字符打印流

在這里插入圖片描述
在這里插入圖片描述

4.對象序列化流與對象反序列化流(它是基于字節(jié)流上的)

對象序列化流

在這里插入圖片描述
在這里插入圖片描述

對象反序列化流

在這里插入圖片描述

在這里插入圖片描述

5.解決對象序列化流的三個問題

在這里插入圖片描述
在這里插入圖片描述

6.Properties

在這里插入圖片描述

代碼理解(properties作為map集合的使用)

在這里插入圖片描述

properties作為集合特有的方法

在這里插入圖片描述

第一個是寫數(shù)據(jù)進入集合
第二個是根據(jù)鍵得到值
第三個是得到鍵得集合

在這里插入圖片描述

Properties和IO流結合的方法

集合數(shù)據(jù)寫到文件

在這里插入圖片描述

文件寫到集合

在這里插入圖片描述

總結

IO流其實很簡單,重點是要掌握其中的字節(jié)流讀寫方法,以及字符流的讀寫方法和Properties與IO流結合的進行使用。

到此這篇關于Java全面解析IO流相關知識的文章就介紹到這了,更多相關Java IO流內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Spring整合Quartz實現(xiàn)動態(tài)定時器的示例代碼

    Spring整合Quartz實現(xiàn)動態(tài)定時器的示例代碼

    本篇文章主要介紹了Spring整合Quartz實現(xiàn)動態(tài)定時器的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • spring?boot自動裝配之@ComponentScan注解用法詳解

    spring?boot自動裝配之@ComponentScan注解用法詳解

    @ComponentScan的作用就是根據(jù)定義的掃描路徑,把符合掃描規(guī)則的類裝配到spring容器中,下面這篇文章主要給大家介紹了關于spring?boot自動裝配之@ComponentScan注解用法的相關資料,需要的朋友可以參考下
    2023-04-04
  • Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼

    Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼

    這篇文章主要介紹了Java編程Socket實現(xiàn)多個客戶端連接同一個服務端代碼,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Spring?依賴查找的使用小結

    Spring?依賴查找的使用小結

    在不同的編程框架和容器中,依賴查找的方式可能會有所不同,本文主要介紹了Spring依賴查找的使用小結,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • Java中的CompletableFuture原理與用法

    Java中的CompletableFuture原理與用法

    CompletableFuture 是由Java8引入的,這讓我們編寫清晰可讀的異步代碼變得更加容易,該類功能比Future 更加強大,在Java中CompletableFuture用于異步編程,異步通常意味著非阻塞,運行任務單獨的線程,與主線程隔離,這篇文章介紹CompletableFuture原理與用法,一起看看吧
    2024-01-01
  • 詳解Java實現(xiàn)多線程的三種方式

    詳解Java實現(xiàn)多線程的三種方式

    線程(英語:thread)是操作系統(tǒng)能夠進行運算調度的最小單位。它被包含在進程之中,是進程中的實際運作單位。本文總結了Java多線程是三種實現(xiàn)方式,需要的可以參考一下
    2022-03-03
  • Java中5種方式實現(xiàn)String反轉

    Java中5種方式實現(xiàn)String反轉

    下面小編就為大家?guī)硪黄狫ava中5種方式實現(xiàn)String反轉。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。
    2016-06-06
  • Springboot?前后端分離項目使用?POI?生成并導出?Excel的操作方法

    Springboot?前后端分離項目使用?POI?生成并導出?Excel的操作方法

    在做一個?SpringBoot?前后端分離項目的時候,需要將數(shù)據(jù)存到?Excel中,用戶可以下載?Excel,具體實現(xiàn)是采用?Apache?強大的?POI,本文給大家介紹Springboot?前后端分離項目使用?POI?生成并導出?Excel相關知識,感興趣的朋友一起看看吧
    2023-09-09
  • MybatisX中xml映射文件中命名空間爆紅的解決

    MybatisX中xml映射文件中命名空間爆紅的解決

    本文主要介紹了MybatisX中xml映射文件中命名空間爆紅的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • JFreeChart插件實現(xiàn)的折線圖效果實例

    JFreeChart插件實現(xiàn)的折線圖效果實例

    這篇文章主要介紹了JFreeChart插件實現(xiàn)的折線圖效果,結合實例形式分析了基于JFreeChart繪制折線圖的相關實現(xiàn)技巧,需要的朋友可以參考下
    2016-08-08

最新評論