freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

博博jsp教程:第6章對文件的操作(編輯修改稿)

2025-07-03 18:21 本頁面
 

【文章內(nèi)容簡介】 FileOutputStream outFile= new FileOutputStream(e:/,true)。 BufferedOutputStream bufferout=new BufferedOutputStream(outFile)。 (buffer)。 ()。 ()。 } catch(IOException ioe) { (File Write Error!)。 } % /body /html 字符流 ? 前面我們學習了使用字節(jié)流讀 /寫文件 ,但是字節(jié)流不能直接操作 Unicode 字符 ,所以 java提供了字符流.由于漢字在文件中占用 2個字節(jié),如果使用字節(jié)流讀寫文件會出現(xiàn)亂碼現(xiàn)象,采用字符流就可以避免亂碼.在 Unicode字符集中,一個漢字被看作一個字符. ? 字符流有兩個超類,也是兩個抽象類:字符輸入流(Reader)和字符輸出流 (Writer). Reader類是所有字符輸入流的父類; Writer類是所有字符輸出流的父類。 1. Reader類 ? 下面是對 Reader類的描述 (1). Reader的常用方法 ? int read() 輸入流調(diào)用該方法從源中讀取一個字符,該方法返回一個參數(shù)( 0~65535之間的一個整數(shù), Unicode字符值)。如果未讀出字符就返回 1。 ? int read(char b[]) 輸入流調(diào)用該方法從源中讀取 字符數(shù)組 b中,返回實際讀取的字符數(shù)目。如果到達文件的末尾,則返回 1。 ? int read(char b[],int off , int len) 輸入流調(diào)用該方法從源中讀取 len個字符并存放到字符數(shù)組 b中,返回實際讀取的字符數(shù)目。如果到達文件的末尾,則返回 1。其中, off參數(shù)表明,從數(shù)組 b的 off位移處開始存放數(shù)據(jù)。 ? void close() 輸入流調(diào)用該方法關(guān)閉輸入流 ? long skip(long numBytes)輸入流調(diào)用該方法跳過 numBytes個字符,并返回實際跳過的字符數(shù)目 (2) . Reader的類層次 Reader類的層次結(jié)構(gòu)圖如圖 64所示。 Reader InputStreamReader FilterReader BufferedReader PipedReader CharArrayReader StringReader FileReader LineNumberReader PushbackReader 圖 64 Reader類層次 2. Writer類 下面是對 Writer類的描述。 (1). Writer的常用方法 ? void write( int n)向輸出流寫入一個 Unicode字符值 (數(shù)字 ) ? void write(char b[])向輸出流寫入一個字符數(shù)組 ? void write(char b[],int off, int length)從給定字符數(shù)組中其實與偏移量 off處取 len個字符寫到輸出流。 ? void write(String str) 向輸出流寫入一個字符串 ? void close()關(guān)閉輸出流 (2) Writer的類層次 Writer類的層次結(jié)構(gòu)圖如圖 65所示。 Writer OutputStreamWriter FilterWriter BufferedWriter PipedWriter CharArrayWriter StringWriter PrintWriter FileWriter 圖 65 Writer類層次 ? 字符流有多個子類,能直接對文件進行讀或?qū)懙淖宇愑校? 文件字符輸入流 (FileReader)和文件字符輸出流(FileWriter).下面是它們的構(gòu)造方法。 1. FileReader類的構(gòu)造方法: ? public FileReader(File file) throws ? public FileReader(String name) throws 其中, name為文件名, file為 File對象,即可以用文件名或 File對象構(gòu)造文件輸入流對象。通過文件輸入流對象讀文件。 2. FileWriter類的構(gòu)造方法: ? public FileWriter(File file) throws IOException ? public FileWriter(String name) throws IOException ? public FileWriter(File file, boolean append) throws IOException ? public FileWriter(String name, boolean append) throws IOException 其中, name為文件名, file為 File對象, append表示文件的寫入方式。 append的值為 false時,為重寫方式,即要寫入的內(nèi)容從文件開頭寫入,覆蓋以前的文件內(nèi)容;當append的值為 true時,為添加方式,即要寫入的內(nèi)容添加到文件的尾部。 append的默認值是 false??梢砸晕募騀ile對象構(gòu)造文件輸出流對象,通過文件輸出流對象寫文件。 FileReader讀文件 [例子 ]在客戶端顯示文件 e:/。 程序結(jié)構(gòu): 程序名: 程序算法: 1. 以文件名“ e:/”為參數(shù),構(gòu)造文件對 象:f 2. 以文件對象 f為參數(shù),構(gòu)造字符輸入流: in 3. 每次從 in中讀取 n個字符 ,保存在字符數(shù)組 b中 4. n等于 1時,結(jié)束循環(huán),否則,把數(shù)組 b以字符串的方式輸出到客戶端,重復步驟 3 。 程序代碼: %@ page contentType=text/html。charset=GB2312 % %@ page import=.*% HTML BODY % File f=new File(e:/)。 try { FileReader in=new FileReader(f)。 String str=null。 char b[]=new char[50]。 int n=0。 while((n=(b))!=1) { str=new String(b,0,n)。 (str)。 } ()。 } catch(IOException e) { } % /BODY /HTML 用類 FileWriter寫文件 [例子 ] 把從客戶端輸入的文本,添加到服務器的e:/。 程序結(jié)構(gòu): 程序名: 程序算法: 1. 創(chuàng)建一個表單,包含一個文本框,文本框名 是 boy 2. 獲取文本框數(shù)據(jù),保存在字符串 str中 3. 將 str進行編碼 4. 以“ e:/”為參數(shù),創(chuàng)建一個輸出 流 :wf 5. 將 str寫入到輸出流 wf中。 程序代碼: %@ page contentType=text/html。charset=GB2312 % %@ page import=.*% HTML BODY bgcolor=cyanFONT size=3 FORM action= method=post name=form INPUT type=text name=boy INPUT TYPE=submit value=保存 name=submit /FORM % String str=(boy)。 if(str==null) str= 。 byte b[]=(ISO88591)。 str=new String(b)。 try { FileWriter wf=new FileWriter(e:/,true)。 (str)。 //將字符串寫入輸出流指向的文件 ()。 //關(guān)閉輸出流 (將數(shù)據(jù)存入到文件 :e:/ )。 } catch(IOException ioe) { (File Write Error!)。 } % /body /html 字符緩存流 ? 由于使用 FileReader類和 FileWriter類讀寫文件效率不高,在實際應用中,常常使用字符緩存流來讀寫文件。字符緩存流有:字符緩存輸入流 (BufferedReader)和字符緩存輸出流(BufferedWriter)。 常用構(gòu)造方法 1. BufferedReader類的構(gòu)造方法 BufferedReader (Reader in ) BufferedReader (Reader in int size) 2. BufferedWriter類的構(gòu)造方法 BufferedWriter (Writer out ) BufferedWriter (Writer out int size) 其中, in是字符輸入流對象, out是字符輸出流對象, size是緩沖區(qū)大小。 實際應用中,為了提高文件讀寫的效率, FileReader流經(jīng)常和 BufferedReader流配合使用; FileWriter流經(jīng)常和BufferedWriter流配合使用。下面是構(gòu)造字符緩存流的方法: : 假設需要使用字符緩存流讀文件 ,則需要對文件 進行兩次封裝: 第一步:構(gòu)造文件字符輸入流 FileReader in=new FileReader () 第二步:構(gòu)造字符緩存輸入流 BufferedReader inbuffer= BufferedReader (in) 這樣,我們就可以讓 inbuffer調(diào)用 readLine()方法讀取文件內(nèi)容, inbuffer讀取文件的過程中,會進行緩存處理,提高讀取的效率. : 假設需要使用字符緩存流寫文件 ,則需要對文件 進行兩次封裝: 第一步:構(gòu)造文件字符輸出流 FileWriter out=new FileWriter () 第二步:構(gòu)造緩存輸出流 BufferedWriter outbuffer= BufferedWriter (out) 這樣, 我們就可以讓 outbuffer調(diào)用 write()方法向文件寫入內(nèi)容時會進行緩存處理,提高寫入的效率。需要注意的是,寫入完畢后,須調(diào)用 flush()方法將緩存中的數(shù)據(jù)存入文件。 用類 BufferedRdader讀文件 [例子 ] 用字符緩存讀文件 e:/,并輸出到客戶端。 程序結(jié)構(gòu): 程序名: 程序算法: 1.以文件名 e:/為參數(shù),構(gòu)造文件對象: f 2. 以文件對象 f為參數(shù),構(gòu)造輸入流: in 3. 以輸入流 in為參數(shù),構(gòu)造緩存輸入流: bufferin 4. 每次從 bufferin中讀取一行數(shù)據(jù),保存在字符串 str中 5. str等于 null時結(jié)束循環(huán),否則,把字符串 str輸出到 客戶端,重復步驟 4。 程序代碼: %@ page contentType=text/html。charset=GB2312 % %@ page import=.*% HTML BODY % File f=new File(e:/)。 try { FileRea
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1