java中什麼是io流
#流是一組有順序的,有起點和終點的字節集合,是資料傳輸的總稱或抽象。即資料在兩個設備間的傳輸稱為流。
java IO流主要是用作資料傳輸,根據資料傳輸特性將流抽象化為各種類,方便更直觀的進行資料操作。 (推薦教學:java教學)
Java I/O主要包含以下幾個層次,包含三個部分:
1.流式部分-IO的主體部分;
2.非流式部分-主要包含一些輔助流式部分的類,如:File類、RandomAccessFile類和FileDescriptor等類;
3.其他類-檔案讀取部分的與安全相關的類,如:SerializablePermission類,以及與本機作業系統相關的檔案系統的類,如:FileSystem類和Win32FileSystem類和WinNTFileSystem類。
主要的類別如下:
1. File(檔案特徵與管理):用於檔案或目錄的描述訊息,例如產生新目錄,修改檔案名,刪除文件,判斷文件所在路徑等。
2. InputStream(二進位格式運算):抽象類,基於位元組的輸入操作,是所有輸入流的父類。定義了所有輸入流都具有的共同特徵。
3. OutputStream(二進位格式運算):抽象類別。基於位元組的輸出操作。是所有輸出流的父類別。定義了所有輸出流都具有的共同特徵。
4.Reader(檔案格式操作):抽象類,基於字元的輸入操作。
5. Writer(檔案格式運算):抽象類,基於字元的輸出運算。
6. RandomAccessFile(隨機檔案操作):一個獨立的類,直接繼承至Object.它的功能豐富,可以從檔案的任意位置進行存取(輸入輸出)操作。
IO流的分類:
a) 根據處理資料類型的差異分為:字元流和位元組流;
b) 根據資料流向不同分為:輸入流和輸出流。
c) 以資料來源(去向)分類:
1、File(檔案): FileInputStream, FileOutputStream, FileReader, FileWriter
2、byte[]:ByteArrayInputStream, ByteArrayOutputStream
3、Char[]: CharArrayReader,CharArrayWriter
4、String:StringBufferInputStream, StringReader, StringWriter
5、網路資料流:InputStream,OutputStreamStream, Reader, Writer, Reader, Writer
打個比方:
例如你家的水龍頭的管道就是一個流:流又分為輸入輸出流,輸入流就是你家水龍頭抽水庫水的那頭(FileInputStream:將水抽到管道裡面),輸出流就是你家水龍頭流到你家大水缸的那頭(FileOutputStream:將水流到缸裡)。
現在有個A.txt文件,你要讀取裡面的信息,就相當於水龍頭抽水庫水到管道(FileInputStream),然後讀取完後寫入到另一個文件裡面(FileOutputStream) ,就是相當於水龍頭會抽到水後流到大水缸。很簡單吧,就是一進一出的事,沒這麼複雜。
以上是java中什麼是io流的詳細內容。更多資訊請關注PHP中文網其他相關文章!