网站大量收购闲置独家精品文档,联系QQ:2885784924

第11章 输入输出.pptVIP

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章输入输出ppt课件

Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。 Java的I/O流提供了读写数据的标准方法 任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。 Java.io是大多数面向数据流的输入/输出类的主要软件包。 数据流是一串连续不断的数据的集合。 数据写入程序可以是一段、一段地向数据流管道中写入数据,这些数据段会按先后顺序形成一个长的数据流。 对数据读取程序来说,看不到数据流在写入时的分段情况,每次可以读取其中的任意长度的数据,但只能先读取前面的数据后,再读取后面的数据。 一组有序,有起点和终点的字节的数据序列。 包括输入流和输出流。 11.1.1 I/O流的概念 缓冲流:为流配备一个缓冲区(buffer) 缓冲区就是一块存储区域,用来辅助与外部设备的数据传输,从而提高数据的传输效率 在实现写数据时,先将这些数据写入流缓冲区,而并不直接将它们送入输出设备,流缓冲区的数据量会被自动地跟踪,一旦发现缓冲区满了,就会将其中的数据一次性传输到外部设备上,缓冲区变为空 可以减少与外部设备打交道的次数 11.1.2 预定义的I/O流类概述 从流的方向划分 输入流 输出流 从流的分工划分 节点流 处理流 从流的内容划分 面向字符的流(字符流) 面向字节的流(二进制流) 11.1.2 预定义的I/O流类概述 java.io包的顶级层次结构 面向字符的流:专门用于字符数据 面向字节的流:用于一般目的 1) FileWriter类(字符输出流类) 构造方法 FileWriter fw = new FileWriter(String fileName); 创建字符输出流类对象和已存在的文件相关联。文件不存在,则创建。 FileWriter fw = new FileWriter(String fileName, boolean append); 创建字符输出流类对象和已存在的文件相关联,并设置该该流对文件的操作是否为续写 1) FileWriter类(字符输出流类) 主要方法 void write(String str) 写入字符串。 viod flush() 刷新该流中的缓冲。 viod close() 关闭此流。 11.2.1 写文本文件 【例】在C盘根目录创建文本文件Hello.txt,并往里写入若干行文本 1) 抽象类OutputStream 提供了3个write方法来做数据的输出 public void write(byte b[ ]) 将参数b中的字节写到输出流 public void write(byte b[ ], int off, int len) 将b从偏移量off开始len个字节写到输出流 public abstract void write(int b) 先将int转换为byte类型,把低字节写入输出流 1) 抽象类OutputStream 1) 抽象类InputStream Inputstream类中的常用方法 public abstract int read( ):读取一个byte的数据,返回值是高位补0的int类型值。 public int read(byte b[ ]):读取b.length个字节的数据放到b数组中。返回值是读取的字节数。 public int read(byte b[ ], int off, int len):读取len个字节的数据,存放到偏移量为off的b数组中 public long skip(long n):忽略输入流中的n个字节,跳过一些字节来读取 1) 抽象类InputStream DataInputStream 11.2.5 处理压缩文件 压缩流的实现 ZIP是一种较为常见的压缩形式,在Java中要想实现ZIP的压缩需要导入java.util.zip包,可以使用此包中的ZipOutputStream、ZipInputStream、ZipEntry几个类完成。 11.2.5 处理压缩文件 ZipEntry: 在每一个压缩文件中都会存在多个子文件,每一个子文件在JAVA中就使用ZipEntry表示。 ZipEntry类的构造方法: public ZipEntry(String name) 在实例化ZipEntry的时候,要设置名称,此名称实际上就是压缩文件中的每一个元素中的名称。 由于文本文件的存储方式其实也是二进制代码,因此也可使用InputStream类的方法读取 用InputStream类读取文本文件并打印在屏幕上 流的基本处理单位是字节.如果每次只读写一个字节,数据传输的效率非常低, 返回值是实际忽略的字节数, * 用于一般目

文档评论(0)

118zhuanqian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档