stream代表的是任何有能力產出數據的數據源
(
表示以字節為單位從stream中讀取或往stream中寫入信息
(
以Unicode字符為導向的stream
區別
Reader和Writer要解決的
但是
一.流的層次結構
定義
(
輸入流
輸出流
二.InputStream類
inputstream類和outputstream類都為抽象類
InputStream是輸入字節數據用的類
(
(
(
(
(
(
三.OutputStream類
OutputStream提供了
注意
四.FileInputStream類
FileInputStream類是InputStream類的子類
方式
File fin=new File(
FileInputStream in=new FileInputStream(fin);
方式
FileInputStream in=new
FileInputStream(
方式
構造函數將 FileDescriptor()對象作為其參數
FileDescriptor() fd=new FileDescriptor();
FileInputStream f
五.FileOutputStream類
FileOutputStream類用來處理以文件作為數據輸出目的數據流
創建一個文件流對象有兩種方法
方式
File f=new File(
FileOutputStream out=new FileOutputStream (f);
方式
FileOutputStream out=new
FileOutputStream(
方式
FileDescriptor() fd=new FileDescriptor();
FileOutputStream f
方式
FileOutputStream f=new FileOutputStream(
注意
(
舉例
六.File類
File類與InputStream / OutputStream類同屬於一個包
File類主要用於命名文件
舉例
七.從一個流構造另一個流
java的流類提供了結構化方法
而高層流不是從輸入設備讀取
使用
為InputStream和OutputStream定義decorator類接口的類
FilterInputStream的種類
構造函數的參數
DataInputStream
與DataOutputStream配合使用
InputStream
包含了一整套讀取primitive數據的接口
BufferedInputStream
用這個類來解決
InputStream
它本身並不提供接口
LineNumberInputStream
跟蹤輸入流的行號
InputStream
只是加一個行號
PushbackInputStream
有一個
InputStream
主要用於編譯器的掃描程序
FilterOutputStream的種類
構造函數的參數
DataOutputStream
與DataInputStream配合使用
OutputStream
包括寫入primitive數據的全套接口
PrintStream
負責生成帶格式的輸出(formatted output)
一個OutputStream以及一個可選的boolean值
應該是OutputStream對象的最終包覆層
BufferedOutputStream
用 這個類解決
OutputStream
本身並不提供接口
DataInputStream類對象可以讀取各種類型的數據
DataOutputStream類對象可以寫各種類型的數據
創建這兩類對象時
FileInputStream in=new FileInputStream(
DataInputStream din=new DataInputStream(in);
允許程序在不降低系統性能的情況下一次一個字節的從流中讀取數據
BufferInputstream定義了兩種構造函數
(
(
第二個參數表示指定緩沖器的大小
同樣BufferOutputStream也有兩種構造函數
用於寫入文本或基本類型
兩種構造函數方法
PrintStream ps=new PrintStream(out);
PrintStream ps=new PrintStream(out
第二個參數為布爾值
八.字符流的讀取和寫入
java
Reader的體系結構
(
FileReader主要用來讀取字符文件
FileReader f=new FileReader(
File f=new file(
FileReader f
FileDescriptor() fd=new FileDescriptor()
FileReader f
(
將字符數組作為輸入流
public CharArrayReader(char[] ch);
(
讀取字符串
public StringReader(String s);
(
從輸入流讀取字節
Public inputstreamReader(inputstream is);
(
允許過濾字符流
protected filterReader(Reader r);
(
接受Reader對象作為參數
Public BufferReader(Reader r);
Writer類體系結構
(
將字符類型數據寫入文件
Public FileWrite(file f);
(
將字符緩沖器用作輸出
Public CharArrayWrite();
(
生成格式化輸出
public PrintWriter(outputstream os);
(
用於寫入過濾字符流
protected FilterWriter(Writer w);
FilterOutputStream的種類
構造函數的參數
DataOutputStream
與DataInputStream配合使用
OutputStream
包括寫入primitive數據的全套接口
PrintStream
負責生成帶格式的輸出(formatted output)
一個OutputStream以及一個可選的boolean值
應該是OutputStream對象的最終包覆層
BufferedOutputStream
用 這個類解決
OutputStream
本身並不提供接口
DataInputStream類對象可以讀取各種類型的數據
DataOutputStream類對象可以寫各種類型的數據
創建這兩類對象時
FileInputStream in=new FileInputStream(
DataInputStream din=new DataInputStream(in);
允許程序在不降低系統性能的情況下一次一個字節的從流中讀取數據
BufferInputstream定義了兩種構造函數
(
(
第二個參數表示指定緩沖器的大小
同樣BufferOutputStream也有兩種構造函數
用於寫入文本或基本類型
兩種構造函數方法
PrintStream ps=new PrintStream(out);
PrintStream ps=new PrintStream(out
第二個參數為布爾值
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26122.html