IO 流操作規律

2021-06-25 16:16:13 字數 3099 閱讀 2869

流的操作規律:

1.明確源和目的

源:inputsream reader

目的:outputstream writer

2.明確資料是否是純文字資料

源:是純文字 reader

否:inputsream

目的:是純文字 writer

否:outputstream

3.明確具體的裝置

源裝置:

硬碟:file

鍵盤:system.in

記憶體:陣列

網路:socket流

目的裝置:

硬碟:file

控制台:system.in

記憶體:陣列

網路:socket流

4.是否需要其他額外功能

i.是否需要高效(緩衝區)

是,加buffer

ii.轉換

1、明確和目的:

源:inputstream reader

目的:outputstream writer

2、是否純文字

是源:reader

目的:writer

3、明確具體裝置。

源:硬碟:file

目的:硬碟:file

filereader fr = new filereader("a.txt");

filewriter fw = new filewriter("b.txt");

4、需要額外功能嗎?

需要,需要高效

bufferedreader bufr = new bufferedreader(new filereader("a.txt")));

bufferedwrieter bufw = new bufferedwrieter(new filewriter("b.txt"));

demo2:讀取鍵盤錄入資訊,並寫入到乙個檔案中

1、明確和目的:

2、是否純文字

是源:reader

目的:writer

3、明確裝置

源:鍵盤:system.in

目的:硬碟:file

inputstream in = system.in;

filewriter fw = new filewriter("b.txt");

4、需要額外功能嗎?

需要。轉換。

將位元組流轉換成字元流。因為明確的源是reader,這樣操作文字資料更便捷

inputstreamreader isr = new inputstreamreader(system.in);

filewriter fw = new filewriter("b.txt");

還需要功能嗎?

需要:嗯

bufferedreader bufr = new bufferedreader(new inputstreamreader(system.in));

bufferedwrieter bufw = new bufferedwrieter(new filewriter("b.txt"));

demo3:講乙個文字檔案資料顯示在控制台上

1、明確和目的:

源:inputstream reader

目的:outputstream writer

2、是否純文字

是源:reader

目的:writer

3、明確具體裝置。

源:硬碟:file

目的:控制台:system.out

filereader fr = new filereader("a.txt");

outputstream os = system.out;

4、需要額外功能嗎?

需要,轉換

filereader fr = new filereader("a.txt");

outputstreamwriter osw = new outputstreamwriter(system.out);

需要高效

bufferedreader bufr = new bufferedreader(new filereader("a.txt"));

bufferedwrieter bufw = new bufferedwrieter(new outputstreamwriter(system.out));

demo4:讀取鍵盤錄入資料,顯示在控制台上

inputstream is = system.in;

outputstream out = system.out;

inputstreamreader isr = new inputstreamreader(system.in);

outputstreamwriter osw new outputstreamwriter(system.out);

bufferedreader bufr = new bufferedreader(new inputstreamreader(system.in));

bufferedwriter bufw = new bufferedwrieter(new outputstreamwriter(system.out));

demo5:講乙個中文字串資料按照指定的編碼表寫入到乙個文字檔案中

1、目的。outputstream writer

2、是純文字,writer

3、裝置:硬碟file

filewriter fw = new filewriter("a.txt");

fw.write("你好");

注意:既然需求中已經明確了指定編碼表的動作,那就不可以使用filewriter,因為filewriter內部使用預設的本地編碼表

只能使用其父類。outputstreamwriter.

outputstreamwriter接受乙個位元組輸出流物件,既然是操作檔案,那麼該物件應該是fileoutputstream

outputstreamwriter osw = new outputstreamwriter(new fileoutputstream("a.txt"),charsetname);

什麼時候使用轉換流呢?

1、源或者目的對應的裝置室位元組流,但是操作的卻是文字資料,可以使用轉換作為橋梁,提高對文字操作的便捷。

2、一旦操作文字涉及到具體的自定編碼表時,必須使用轉換流

IO流操作規律

流操作的基本規律 最痛苦的就是流物件有很多,不知道用哪乙個。通過兩個明確來完成。1 明確源和目的。源 輸入流。inputstream reader 目的 輸出流 outputstream writer 2 操作的資料是否是純文字 是 字元流 不是 位元組流 3 當體系確定後,在明確需要使用哪個具體物...

IO流操作的規律

io流操作中,首先要明確開發中具體要使用哪個流物件。1,明確資料來源,資料匯 資料目的 其實就是在明確要使用的io體系。inputstream outpurstream reader writer 需求中操作的是源 意味著是讀,inputstream reader 需求中操作的是目的 意味著是寫 o...

IO流的操作規律

1 明確源和目的 源 inputstream reader 目的 outputstream writer 2 明確資料是否是純文字資料 源 是純文字 reader 不是純文字 inputstream 目的 是純文字 writer 不是純文字 outputstream 先明確體系是哪個 3 明確具體的...