黑马程序员——io(inputoutput)流总结(二)

黑马程序员——io(inputoutput)流总结(二)

ID:32602662

大小:61.15 KB

页数:5页

时间:2019-02-13

黑马程序员——io(inputoutput)流总结(二)_第1页
黑马程序员——io(inputoutput)流总结(二)_第2页
黑马程序员——io(inputoutput)流总结(二)_第3页
黑马程序员——io(inputoutput)流总结(二)_第4页
黑马程序员——io(inputoutput)流总结(二)_第5页
资源描述:

《黑马程序员——io(inputoutput)流总结(二)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、10(InputOutput)流总结《二)刚开始观看毕老师的视屏的时候,感觉一会儿输出流,一会儿输入流的/—会儿Systern.out,—会儿又转换流的。很晕。最后毕老师给了一个总结,归纳出了10操作的规律。感觉总结的非常好,虽然刚看第一遍的时候还是很晕,不过现在终于融汇贯通。下面我就用自己的理解,总结一下10流操作的一般规律:在使用10操作流之前,我们要问自己一下四个问题:A.源和目的都有吗?(初步确定体系)B.源和目的操作的是字符吗?(确定体系)C.源和目的的设备都是些什么?(辅助确定具体对象)D.需要提高输入和输出的效率吗?补充:源的设备

2、:内存,硬盘,键盘目的的设备:内存,硬盘,控制台当明确了以上几点之后我们就可以确定到底应该使用那一个流对象。Demol:拷贝一个文本文件的副本。分析:A.源和目的都有。所以,源可以选择:Reader或者InputStream目的可以选择:Writer或者OutputStreamB.操作的都是字符数据。所以,源应该选择:Reader目的应该选择:WriterC.源的设备是:硬盘。目的的设备是:硬盘。所以:源应该使用:FileReader目的应该使用:FileWriterD.需要提高输入和输出效率。所以可以使用相应的装饰类。源使用:Buffered

3、Reader目的使用:BufferedWriter具体代码如下:BufferedReaderbufr=newBufferedReader(newFileReader(,,1.txtH));BufferedWriterbufw=newBufferedWriter(newFileWriter(ncopv1.txtn));Demo2:分析:A.源和目的都有。所以,源可以选择:Reader或者InputStream目的可以选择:Writer或者0utputStreannB.操作的都是字符数据。所以,源应该选择:Reader目的应该选择:WriterC.

4、源的设备是键盘。目的的设备是:硬盘。因为源是键盘所以应该使用System.in,但是键盘是字节流,但是我们使用的体系应该是Reader(字符)体系的。所以要使用InputSreamReader(转换流)将字节流转换为字符流在进行操作。目的应该使用:FileWriterA.需要提咼输入和输出效率。所以可以使用相应的装饰类。源使用:BufferedReader目的使用:BufferedWriter具体代码如下:BufferedReaderbufr=newBufferedReader(newInputStreamReadertSystem.in));

5、BufferedWriterbufw=newBufferedWriter(newFileWriter(ncopy_1.txtH));转换流详解:查阅api我们知道转换流是定义在字符体系中的,那么我们什么时候应该使用转换流呢?InputStreamReader:是字节数据通向字符数据的桥梁。当我们要将字节数据转换成字符数据时使用,在转换成字符数据时,我们必须指定字符编码方式,如GB2312.UTF-8等如果我们转化的时候使用的编码是系统默认编码,那么我们可以使用FileReadero其实,FileReader就是对编码方式为系统默认的转换流(pu

6、blicInputStreamReader(InputStreamin):创建一个使用默认字符集的1叩utStreamReadero)的一个封装,这样使用起来比较简单。OutputStreamWriter:是字符数据通向字节数据的桥梁。当创建使用指定字符集的OutputStreamWriter时使用。简单说就是,我们如果要输出一些文本到控制台上,那么我们知道控制台的标准输出流是System.out,是字节流,我们在操作时,就要将字符数据转化成字节数据,这样控制台才能正确显示,所以就用到了OutputStreamWriter。但是这个地方要注意,

7、如果我们拿到一个文本他的编码方式是UTF-8,但是你的电脑是简体中文的。如果你在使用OutputStreamWriter的时候没有指明转换时使用的码表,那么系统就会按照系统默认的码表转换(一般是GBK[这样肯定会出问题了,所以,记住了!当我们要指定编码方式的时候就使用转换流InputStreamReader禾Q0utputStreamWriteroDemo3:将从键盘输入字符的数据显示在屏幕上。快速分析:A.使用键盘,输入流就是Systemin,但是输入的是字符,所以用到转换流:I叩utStreamReaderfSystemin)B.输出到屏幕

8、上顾名思义就是控制台。所以输出流是Systemout,因为是文本输出f所以使用0utputStreamWriter(Systemout)A.如果要提高

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。