日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

JAVA教程 第四講 Java的例外處理和I/O流(二)

瀏覽:42日期:2024-03-06 09:54:41

4.5.2 文件的順序處理

類FileInputStream和FileOutputStream用來進(jìn)行文件I/O處理,由它們所提供的方法可以打開本地主機(jī)上的文件,并進(jìn)行順序的讀/寫。例如,下列的語句段是順序讀取文件名為text的文件里的內(nèi)容,并顯示在控制臺上面,直到文件結(jié)束為止。

FileInputStream fis;

try{

fis = new FileInputStream( 'text' );

System.out.print( 'content of text is : ');

 int b;

 while( (b=fis.read())!=-1 ) //順序讀取文件text里的內(nèi)容并賦值

給整型變量b,直到文件結(jié)束為止。

 {  

 System.out.print( (char)b );

 }

}catch( FileNotFoundException e ){

System.out.println( e );

}catch( IOException e ){

System.out.println( e );

}

4.5.3 隨機(jī)訪問文件

對于InputStream 和OutputStream 來說,它們的實(shí)例都是順序訪問流,也就是說,只能對文件進(jìn)行順序地讀/寫。隨機(jī)訪問文件則允許對文件內(nèi)容進(jìn)行隨機(jī)讀/寫。在java中,類RandomAccessFile 提供了隨機(jī)訪問文件的方法。類RandomAccessFile的聲明為:

public class RandomAccessFile extends Object implements DataInput, DataOutput

接口DataInput 中定義的方法主要包括從流中讀取基本類型的數(shù)據(jù)、讀取一行數(shù)據(jù)、或者讀取指定長度的字節(jié)數(shù)。如:readBoolean( )、readInt( )、readLine( )、readFully( ) 等。

接口DataOutput 中定義的方法主要是向流中寫入基本類型的數(shù)據(jù)、或者寫入一定長度的字節(jié)數(shù)組。如:writeChar( )、writeDouble( )、write( ) 等。 下面詳細(xì)介紹RandomAccessFile類中的方法。

◇ 構(gòu)造方法:

RandomAccessFile(String name,String mode); //name是文件名,mode

//是打開方式,例如'r'表示只讀,'rw'表示可讀寫,'

RandomAccessFile(File file,String mode); //file是文件對象

◇ 文件指針的操作

long getFilePointer( ); //用于得到當(dāng)前的文件指針

void seek( long pos ); //用于移動文件指針到指定的位置

int skipBytes( int n ); //使文件指針向前移動指定的n個(gè)字節(jié)

4.6 過濾流

過濾流在讀/寫數(shù)據(jù)的同時(shí)可以對數(shù)據(jù)進(jìn)行處理,它提供了同步機(jī)制,使得某一時(shí)刻只有一個(gè)線程可以訪問一個(gè)I/O流,以防止多個(gè)線程同時(shí)對一個(gè)I/O流進(jìn)行操作所帶來的意想不到的結(jié)果。類FilterInputStream和FilterOutputStream分別作為所有過濾輸入流和輸出流的父類

過濾流類層次:

java.lang.Object

|

+----java.io.InputStream

|

+----java.io.FilterInputStream

為了使用一個(gè)過濾流,必須首先把過濾流連接到某個(gè)輸入/出流上,通常通過在構(gòu)造方法的參數(shù)中指定所要連接的輸入/出流來實(shí)現(xiàn)。例如:

FilterInputStream( InputStream in );

FilterOutputStream( OutputStream out );

4.6.1 幾種常見的過濾流

◇ BufferedInputStream和BufferedOutputStream

  緩沖流,用于提高輸入/輸出處理的效率。

◇ DataInputStream 和 DataOutputStream

  不僅能讀/寫數(shù)據(jù)流,而且能讀/寫各種的java語言的基本類型,如:boolean,int,float等。

◇ LineNumberInputStream

  除了提供對輸入處理的支持外,LineNumberInputStream可以記錄當(dāng)前的行號。

◇ PushbackInputStream

  提供了一個(gè)方法可以把剛讀過的字節(jié)退回到輸入流中,以便重新再讀一遍。

◇ PrintStream

  打印流的作用是把Java語言的內(nèi)構(gòu)類型以其字符表示形式送到相應(yīng)的輸出流。

4.7 字符流的處理

java中提供了處理以16位的Unicode碼表示的字符流的類,即以Reader和Writer 為基類派生出的一系列類。

4.7.1 Reader和Writer

這兩個(gè)類是抽象類,只是提供了一系列用于字符流處理的接口,不能生成這兩個(gè)類的實(shí)例,只能通過使用由它們派生出來的子類對象來處理字符流。

1.Reader類是處理所有字符流輸入類的父類。

◇ 讀取字符

public int read() throws IOException; //讀取一個(gè)字符,返回值為讀取的字符

public int read(char cbuf[]) throws IOException; /*讀取一系列字符到數(shù)組cbuf[]中,返回值為實(shí)際讀取的字符的數(shù)量*/

public abstract int read(char cbuf[],int off,int len) throws IOException;

/*讀取len個(gè)字符,從數(shù)組cbuf[]的下標(biāo)off處開始存放,返回值為實(shí)際讀取的字符數(shù)量,該方法必須由子類實(shí)現(xiàn)*/

◇ 標(biāo)記流

public boolean markSupported(); //判斷當(dāng)前流是否支持做標(biāo)記

public void mark(int readAheadLimit) throws IOException;

//給當(dāng)前流作標(biāo)記,最多支持readAheadLimit個(gè)字符的回溯。

public void reset() throws IOException; //將當(dāng)前流重置到做標(biāo)記處

◇ 關(guān)閉流

public abstract void close() throws IOException;

2. Writer類是處理所有字符流輸出類的父類。

◇ 向輸出流寫入字符

public void write(int c) throws IOException;

//將整型值c的低16位寫入輸出流

public void write(char cbuf[]) throws IOException;

//將字符數(shù)組cbuf[]寫入輸出流

public abstract void write(char cbuf[],int off,int len) throws IOException;

//將字符數(shù)組cbuf[]中的從索引為off的位置處開始的len個(gè)字符寫入輸出流

public void write(String str) throws IOException;

//將字符串str中的字符寫入輸出流

public void write(String str,int off,int len) throws IOException;

//將字符串str 中從索引off開始處的len個(gè)字符寫入輸出流

◇ flush( )

刷空輸出流,并輸出所有被緩存的字節(jié)。

◇ 關(guān)閉流

public abstract void close() throws IOException;

4.7.2 InputStreamReader和OutputStreamWriter

java.io包中用于處理字符流的最基本的類,用來在字節(jié)流和字符流之間作為中介。

◇ 生成流對象

public InputStreamReader(InputStream in);

/*in是字節(jié)流,而InputStreamReader是字符流,但是其來源是字節(jié)流in,

因此InputStreamReader就可以把字節(jié)流in轉(zhuǎn)換成字符流處理。/*

public InputStreamReader(InputStream in,String enc) throws UnsupportedEncodingException;

/*enc是編碼方式,就是從字節(jié)流到字符流進(jìn)行轉(zhuǎn)換時(shí)所采用的編碼方式,

 例如 ISO8859-1,UTF-8,UTF-16等等*/

public OutputStreamWriter(OutputStream out);

/*out是字節(jié)流,而OutputStreamReader是字符流 */

public OutputStreamWriter(OutputStream out,String enc) throws UnsupportedEncodingException; //enc是編碼方式

InputStreamReader和OutputStreamWriter的方法:

◇ 讀入和寫出字符

基本同Reader和Writer。

◇ 獲取當(dāng)前編碼方式

public String getEncoding();

◇ 關(guān)閉流

public void close() throws IOException;

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品一级二级三级| 午夜在线播放视频欧美| 国产伦理一区| 欧美日本一区| 国产精品美女在线观看直播| 欧美日韩亚洲一区| 国产精品主播| 精品一区二区三区在线观看视频| 精品视频自拍| 欧洲av不卡| 久久精品123| 午夜久久中文| 久久婷婷激情| 亚洲欧美日韩国产| 日本精品国产| 精品一区二区三区中文字幕视频| 精品国产免费人成网站| 999久久久精品国产| 99pao成人国产永久免费视频| 日韩在线播放一区二区| 欧美精品三级在线| 精品国产18久久久久久二百| 日韩欧美一区二区三区在线观看| 狠狠爱www人成狠狠爱综合网| 亚洲精品少妇| 精品一区二区三区亚洲| 亚洲不卡av不卡一区二区| 99成人超碰| 首页国产欧美久久| 91成人在线| 色黄视频在线观看| 欧美~级网站不卡| 日韩精品免费一区二区夜夜嗨| 久久99久久人婷婷精品综合| 91精品韩国| 亚洲精品美女| 91亚洲自偷观看高清| 91精品国产福利在线观看麻豆| 日韩专区在线视频| 免费亚洲婷婷| 亚洲精品1区2区| 国产精品hd| 久久久噜噜噜| 日韩av不卡一区二区| 精品国产欧美日韩一区二区三区| 黑丝美女一区二区| 日韩和欧美的一区| 日韩高清成人| 亚洲不卡视频| 亚洲播播91| 日韩一二三区在线观看| 精品国产免费人成网站| 综合国产视频| av免费不卡国产观看| 亚洲欧美网站在线观看| 成人欧美一区二区三区的电影| 中文字幕日韩亚洲| 福利欧美精品在线| 水野朝阳av一区二区三区| 日韩成人精品一区| 日韩欧美高清一区二区三区| 中文字幕一区久| 亚洲精品一二| 伊人精品一区| 久久不见久久见中文字幕免费| 香蕉精品视频在线观看| 久久精品二区亚洲w码| 免费人成精品欧美精品| 国产一区二区三区天码| 蜜臀av在线播放一区二区三区| 国产精品麻豆久久| 日本高清久久| 国产综合亚洲精品一区二| 欧美黄色一区| 日韩中文字幕在线一区| 一区二区自拍| 日韩欧美一区免费| 国产女人18毛片水真多18精品| 一区二区亚洲精品| 日韩综合精品| 精品中文在线| 久久国内精品自在自线400部| 伊人成人网在线看| 日韩成人三级| 欧美激情aⅴ一区二区三区| 蜜臀久久99精品久久久久久9 | 亚洲在线久久| 亚洲天堂成人| av最新在线| 欧美国产另类| 久久激情五月激情| 婷婷亚洲精品| 亚洲天堂免费| 国产精品视区| 欧美中文一区二区| 91精品韩国| 中文在线资源| 国际精品欧美精品| 国产乱人伦精品一区| 丝袜美腿亚洲色图| 韩日一区二区三区| 99精品网站| 色综合www| 黄色在线网站噜噜噜| 精品一区二区三区免费看| 国产精品一区亚洲| 欧美中文高清| 日韩1区2区日韩1区2区| 日韩精品免费视频一区二区三区 | 美国欧美日韩国产在线播放| 91成人精品| 午夜国产精品视频| 精品捆绑调教一区二区三区| 国产一区二区精品福利地址| 麻豆精品少妇| 久久97视频| 久草精品视频| 久久精品国产网站| 成人国产精选| 日韩欧美一区二区三区在线观看| 涩涩av在线| 日韩欧美一区二区三区免费观看| 韩国精品主播一区二区在线观看| 另类中文字幕国产精品| 久久一区二区中文字幕| 香蕉精品久久| 亚洲一区观看| 日韩中文字幕av电影| 免费成人在线视频观看| 亚州精品视频| 国产美女精品视频免费播放软件| 国产精品一区二区三区av麻| 国产三级一区| 精品国产黄a∨片高清在线| 国产成人久久精品一区二区三区| 日本久久精品| 欧美1级日本1级| 视频一区二区国产| 日本a级不卡| 免费日韩成人| 三级在线看中文字幕完整版| 久久精品av| 久久大逼视频| 青草av.久久免费一区| 国产精品s色| 日韩一区电影| 在线一区免费观看| 日韩精品成人在线观看| 久久av免费看| 日韩高清中文字幕一区二区| 亚洲激情欧美| 欧美自拍一区| 成人国产精品一区二区网站| 久久亚洲国产| 亚洲影院天堂中文av色| 国产精品白浆| 欧美成人基地| 天堂成人免费av电影一区| 在线国产日韩| 精品视频国产| 日韩亚洲国产欧美| 久久激五月天综合精品| 日韩欧美一区二区三区免费看| 国产亚洲一级| 久久国产三级| 在线日韩欧美| 日韩av成人高清| 天堂а√在线最新版中文在线| 国产视频一区三区| 欧美极品一区二区三区| 激情六月综合| 国产欧美一区二区三区精品观看 | 精品亚洲美女网站| 亚洲日本欧美| 国产白浆在线免费观看| 蜜桃视频一区二区| 精品视频一区二区三区四区五区 | 亚州欧美在线| 91一区二区| 一区二区三区四区精品视频| 麻豆精品视频在线观看| 国产精品试看| 国产精品久久久久久久免费观看| 视频在线观看一区| 国产精品99一区二区三| 中文视频一区| 久久男人天堂| 日韩高清电影免费| 亚洲精品.com| 国产精品调教视频| 99视频精品| 国产激情精品一区二区三区| av亚洲在线观看| 久久精品理论片| 激情欧美亚洲| 精品伊人久久| 日韩精选在线| 欧美久久精品一级c片| 美女视频黄久久| 亚洲一区欧美|