- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 Java数据流 数据流 输入输出过程涉及到计算机的内存和外设,所谓输入输出就是内存与外设之间数据传输的过程。输入输出都是相对于计算机内存来说的,将数据从外设传递给内存称为输入,数据由内存传递到外设称为输出。 在Java中,把这些不同类型的输入、输出源抽象为流(Stream)。 而其中输入或输出的数据则称为数据流(Data Stream),用统一的接口来表示。 数据流的基本概念 数据流是指一组有顺序的、有起点和终点的字节集合,输入输出过程中传递的数据组成数据流。从数据流中读取数据时,必须有一个数据源与该数据流相连。 数据的类型不同,所以数据流可划分为不同的集合。根据数据的特点,集合又划分为各个子集,从而形成层次关系。最顶层是输入数据流(input stream)和输出数据流(output stream),以及现行版本中新加入的读者(Reader)和写者(Writer),输入数据流只能读不能写,而输出数据流只能写不能读。 输入数据流 输入数据流(Input Stream) 只能读不能写的数据流,用于从外设向计算机内存传递数据。 java.io包的输入数据流由抽象类InputStream继承而来,并且实现了其中所有方法。 从数据流中读取数据时,必须有一个数据源与该数据流相连。 输入数据流中提供了read()方法,用来读取数据,所读取的数据都默认为字节类型。 当结束对一个数据流的操作时应该将其关闭,同时释放与该数据流相关的资源,用到的方法即是close()。建议程序中显式关闭输入输出流。 输出数据流 输出数据流(Output Stream) 只能写不能读的流,用于从计算机内存向外设输出数据。 write()系列方法是输出的主要方法,方法的使用方式和所带的参数与read()方法非常类似。 当结束对输出数据流的操作时也应该使用close()方法将其关闭。 文件数据流 文件输入输出数据流 FileInputStream FileOutputStream 这两个类用来进行文件的I/O处理,其数据源都是外存中的文件。 例10-1 建立数据源和数据终点 FileInputStream inputfile = new FileInputStream(myInputFile.txt); FileOutputStream outfile = new FileOutputStream(myOutputFile.txt); 在双引号中直接指出文件名,从而创建文件数据流对象,myInputFile是数据流的数据源,用来读入数据;而myOutputFile是数据终点,用来向其中写入数据。 文件数据流 例10-2 将数据写入文件 FileOutputStream out = new FileOutputStream(myOutputFile.txt); out.write(H); out.write(69); out.write(76); out.write(L); out.write(O); out.write(!); out.close(); 文件myOutputFile.txt中会保存字符串HELLO!。 过滤器数据流 基本数据输入输出操作只能提供对字节或字符的处理,当需要处理其他类型时,例如整数、浮点数或字符串时,需要使用一个过滤器类来包装输入流。 过滤器流在创建时与一个已经存在的数据流相连,这样在从这样的数据流中读取数据时,它提供的是对一个原始输入数据流的内容进行了特定处理的数据。 过滤器数据流包括缓冲区数据流、数据流等。 缓冲区数据流有BufferedInputStream和BufferedOutputStream,它们是在数据流上增加了一个缓冲区。当读写数据时,数据以块为单位先进入缓冲区(块的大小可以进行设置),其后的读写操作则作用于缓冲区。 缓冲区数据流示例 例10-3 缓冲区数据流示例 使用默认的缓冲区大小: FileInputStream fis1 = new FileInputStream(myFile);//基本输入数据流 InputStream is = new BufferedInputStream(fis1); //缓冲区输入数据流 FileOutputStream fos1 = new FileOutputStream(myFile); //基本输出数据流 OutputStream os = new BufferedOutputStream(fos1);//缓冲区输出数据流 FileInputStream fis2 = new FileInputStream(myFile); InputStream is = n
您可能关注的文档
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第八章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第二章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第九章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第六章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第七章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第三章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第十二章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第十一章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第四章.ppt
- Java语言程序设计 教学课件 作者 辛运帏 饶一梅 第五章.ppt
- 玲珑轮胎-市场前景及投资研究报告-“7+5”和“3+3”战略,业绩向上空间.pdf
- 开特股份-市场前景及投资研究报告-汽车热管理系统,电动化、智能化,业绩高增,破发.pdf
- 金石资源-市场前景及投资研究报告-共振标的,穿透资产,估值重塑.pdf
- 基康仪器-市场前景及投资研究报告-智能监测,兼具价值成长,破发.pdf
- 华勤技术-市场前景及投资研究报告-AI赋能终端,智能产品平台型企业.pdf
- 沪电股份-市场前景及投资研究报告-数据中心,汽车PCB,双轮驱动.pdf
- 海康威视-市场前景及投资研究报告-规模效应,估值弹性.pdf
- 国机通用-市场前景及投资研究报告-聚焦流体机械,行稳致远,拾级而上.pdf
- 高华科技-市场前景及投资研究报告-高可靠性传感器,工业传感器两翼齐飞.pdf
- 东亚机械-市场前景及投资研究报告:综合性压缩空气系统解决方案提供商,节能优势.pdf
文档评论(0)