FileInputStream
該流用於從文件讀取數據,它的對象可以用關鍵字 new 來創建。
有多種構造方法可用來創建對象。
可以使用字符串類型的文件名來創建一個輸入流對象來讀取文件:
InputStreamf = newFileInputStream("C:/java/hello");
也可以使用一個文件對象來創建一個輸入流對象來讀取文件。我們首先得使用 File() 方法來創建一個文件對象:
Filef = newFile("C:/java/hello"); InputStreamout = newFileInputStream(f);
創建了InputStream對象,就可以使用下面的方法來讀取流或者進行其他的流操作。
序號 | 方法及描述 |
1 | public void close() throws IOException{} |
2 | protected void finalize()throws IOException {} |
3 | public int read(int r)throws IOException{} |
4 | public int read(byte[] r) throws IOException{} |
5 | public int available() throws IOException{} |
FileOutputStream
該類用來創建一個文件並向文件中寫數據。
如果該流在打開文件進行輸出前,目標文件不存在,那麼該流會創建該文件。
有兩個構造方法可以用來創建FileOutputStream 對象。
使用字符串類型的文件名來創建一個輸出流對象:
OutputStreamf = newFileOutputStream("C:/java/hello")
也可以使用一個文件對象來創建一個輸出流來寫文件。我們首先得使用File()方法來創建一個文件對象:
Filef = newFile("C:/java/hello"); OutputStreamf = newFileOutputStream(f);
創建OutputStream 對象完成後,就可以使用下面的方法來寫入流或者進行其他的流操作。
序號 | 方法及描述 |
1 | public void close() throws IOException{} |
2 | protected void finalize()throws IOException {} |
3 | public void write(int w)throws IOException{} |
4 | public void write(byte[] w) |
BufferedWriter 和 BufferedReader 爲帶有默認緩衝的字符輸出輸入流,因爲有緩衝區所以很效率比沒有緩衝區的很高。
一、BufferedWriter類
構造方法:bufferedWriter bf = new bufferedWriter(Writer out );
主要方法:void write(char ch);//寫入單個字符。
void write(char []cbuf,int off,int len)//寫入字符數據的某一部分。
void write(String s,int off,int len)//寫入字符串的某一部分。//(方法重載,根據輸入參數的不同會調用不同的方法)
void newLine()//寫入一個行分隔符。//額
void flush();//刷新該流中的緩衝。將緩衝數據寫到目的文件中去。
void close();//關閉此流,再關閉前會先刷新他。
二、BufferedReader類。
構造方法:BufferedReader br = new BufferReader(Reader in);
主要方法:int read();//讀取單個字符。
int read(char[] cbuf,int off,int len);//將字符讀入到數組的某一部分。返回讀取的字符數。達到尾部 ,返回-1。
StringreadLine(); //讀取一個文本行。
voidclose(); //關閉該流。並釋放與該流相關的所有資源。
FileWriter 類從 OutputStreamWriter 類繼承而來。該類按字符向流中寫入數據。可以通過以下幾種構造方法創建需要的對象。
在給出 File 對象的情況下構造一個 FileWriter 對象。