IO流之位元組陣列流和字串流

2021-09-02 10:35:29 字數 1541 閱讀 4068

1.位元組陣列流

字 節陣列輸出流bytearrayoutputstream實現了乙個輸出流,其中的資料被寫入乙個byte陣列,緩衝區會隨著資料的不斷寫入而自動增長。 關閉bytearrayoutputstream流無效,此類中的方法在關閉該流後還可以使用,而不會產生任何ioexception,資料存放在記憶體。

位元組陣列輸出流bytearrayinputstream實現了乙個輸入流,bytearrayinputstream包含乙個緩衝區,該緩衝區包含從流 中讀取的位元組,內部計數器跟蹤read方法要讀取的下乙個位元組。關閉bytearrayinputstream流後,此類的方法也可以繼續使用。因為資料 是在記憶體中。

示例**:

public static void main(string args)  catch (ioexception e) 

//------------------------

//根據位元組陣列構建位元組陣列輸入流---out關閉後還可以呼叫tobytearray()方法

bytearrayinputstream in=new bytearrayinputstream(out.tobytearray());

bytebytes=new byte[512];

int len=-1;

stringbuilder sb=new stringbuilder();

try

in.close();

} catch (ioexception e)

system.out.println("data: "+sb);

}

執行結果:

2.字串流

字串流的資料存放在記憶體中,關閉流後方法還可以繼續呼叫,而不會產生任何ioexception。stringwriter是字串輸入流,可以用其**再字串緩衝區的輸出來構造字串。

**示例:

public static void main(string args)  catch (ioexception e1) 

//讀取操作,根據乙個字串構造乙個字串輸入流

stringreader sr=new stringreader(sw.tostring());

charchars=new char[10];

int len=-1;

stringbuilder sb=new stringbuilder();

try

sr.close();

} catch (ioexception e)

system.out.println("data: "+sb);

}

執行結果:

位元組陣列流

位元組陣列流 bytearrayinputstream 包含乙個內部緩衝區,該緩衝區包含從流中讀取的位元組。內部計數器跟蹤read方法要提供的下乙個位元組。關閉bytearrayinputstream無效。此類中的方法再關閉流後依然可以被呼叫,而不會產生任何ioexception.bytearray...

位元組陣列輸入流和位元組陣列輸出流實現檔案的拷貝

整理思路如下 為什麼要這樣進行copy 我更願意稱它為傳輸 因為這樣以二進位制的形式傳輸檔案,可以實現檔案的遠距離傳輸,即通過這樣可以實現伺服器與使用者之間檔案的傳輸。我們在本地傳送請求時,計算機將請求編碼為二進位制檔案,當傳送到伺服器後,伺服器將二進位制檔案進行解碼,從而實現檔案的傳輸 那麼如何將...

IO流之位元組字元緩衝流

io裡面的緩衝流分,位元組緩衝流和字元緩衝流。位元組緩衝流 new bufferedinputstream new fileinputstream srcfile new bufferedoutputstream new fileoutputstream destfile 位元組緩衝流沒有別的新加的...