|
java.io包 1)首先先知道它的八種構(gòu)造方法,但怎么記住這八種呢?我們都知道PrintWriter是一種過濾流,也叫處理流。也就是能對字節(jié)流和字符流進(jìn)行處理,所以它會有: PrintWriter(OutputStream out) 根據(jù)現(xiàn)有的 OutputStream 創(chuàng)建不帶自動行刷新的新 PrintWriter。 PrintWriter(Writer out) 創(chuàng)建不帶自動行刷新的新 PrintWriter。
這兩種構(gòu)造方法。由于PrintWriter能夠?qū)崿F(xiàn)自動刷新所以又衍生出另兩種: PrintWriter(OutputStream out, boolean autoFlush) 通過現(xiàn)有的 OutputStream 創(chuàng)建新的 PrintWriter。 PrintWriter(Writer out, boolean autoFlush) 創(chuàng)建新 PrintWriter
true代表能自動刷新。注意這四種均不能指定編碼集,但PrintStream中對OutprintStream操作時(shí)是可以的?!酒渲性蛭也恢?,有知道的朋友歡迎指教】。 然后PrintWriter能夠直接對文件操作,所以還有這兩種構(gòu)造方法: PrintWriter(File file) 使用指定文件創(chuàng)建不具有自動行刷新的新 PrintWriter。 PrintWriter(String fileName) 創(chuàng)建具有指定文件名稱且不帶自動行刷新的新 PrintWriter。
注意該構(gòu)造方法無法指定能否自動刷新,但可以指定字符集所以又衍生出兩種: PrintWriter(File file, String csn) 創(chuàng)建具有指定文件和字符集且不帶自動刷行新的新 PrintWriter。 PrintWriter(String fileName, String csn) 創(chuàng)建具有指定文件名稱和字符集且不帶自動行刷新的新 PrintWriter。
2)熟記這八種構(gòu)造方法,你可以隨心構(gòu)造你需要的PrintWriter對象了(假如為pw)。那它實(shí)現(xiàn)了什么接口呢? 1.Closeable接口, 所以它有pw.close()方法來實(shí)現(xiàn)對PrintWriter的關(guān)閉。 2.Flushable接口,所以它有pw.flush()方法來實(shí)現(xiàn)人為的刷新。 3.Appendable接口,所以它有pw.append(char c)方法來向此輸出流中追加指定字符,等價(jià)于print(). 3)下面就是它的方法。 返回類型為PrintWriter的方法 append(char c) format(String regex,Object args)以指定格式的字符串和參數(shù)寫入PrintWriter,我個(gè)人認(rèn)為等同于printf printf() 返回類型為void的方法 println(Object obj)打印obj,可以是基本數(shù)據(jù)類型或?qū)ο?,并換行 print(Object obj)同上,但不換行 write(int i) 寫入單個(gè)字符i write(char[] buf) 寫入字符數(shù)組。 write(char[] buf, int off, int len) 寫入字符數(shù)組的某一部分。 write(String s) 寫入字符串 write(String s, int off, int len)寫入字符串的某一部分 個(gè)人認(rèn)為:write()方法與print()方法基本一致 但是write(char[] buf, int off, int len)print()不行。但筆者推薦使用Print系列方法,這正是PrintWriter類的價(jià)值所在。 返回類型為boolean類型的方法 checkError() 刷新流并檢查其錯(cuò)誤狀態(tài) 4)舉例: import java.io.IOException;
上面這個(gè)例子中呢,完全可以把pw = new PrintWriter(new FileWriter(new File("e:\\file.txt")),true);中的new FileWrite去掉 毫無影響且可以指定字符集。 總結(jié):PrintWriter是一個(gè)非常實(shí)用的輸出流,下一篇我將介紹一個(gè)非常實(shí)用的輸入流Scanner
|
|
|