文件流和输入输出技术.pptVIP

  1. 1、本文档共34页,可阅读全部内容。
  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文档。上传文档
查看更多
文件流和输入输出技术

文件、流和输入输出技术 第8章 文件、流和输入输出技术 主要内容 8.1 I/O流概述 什么是流 8.2 I/O流类 I/O流的层次: 字符流、 字节流、 标准输入/输出流 8.3 过滤流与流的串接 8.4 文件流类与文件操作 8.5 对象串行化 作业 8.1 I/O 流概述 输入/输出处理是程序设计中非常重要的一部分,比如从键盘读取 数据、从文件中读取数据或向文件中写数据等等。 Java把这些不同类型的输入、输出源抽象为流(stream),用统一 接口来表示,从而使程序简单明了。 Jdk 提供了包java.io,其中包括一系列的类来实现输入/输出处理。 进行I/O操作时可能会产生I/O例外,属于非运行时例外,应该在程 序中处理。如: FileNotFoundException, EOFException, IOException 什么是流 流实际上是一个数据序列。采用流的机制可以使数据有序地输入和输出。 输入流与输出流。 8.2 I/O流类 Java有各种各样的执行I/O的流,在java.io包中定义了这些流,其层次结构图如图8.3所示。编写程序时,java.io包必须被执行输入输出的程序导入。 输入输出流可以从以下几个方面进行分类: 从流的方向划分:输入流和输出流; 从流的分工划分:节点流和处理流; 从流的内容划分:字符流和字节流。 I/O流类 8.2.1 字符流 Java中的字符使用的是Unicode编码,每个字符占有两个字节,即16bit。 字符流是以16位的Unicode码表示的字符为基本处理单位,进行文本数据 的读写,可以实现Java程序中的内部格式和文本文件、显示输出、键盘输 入等外部格式之间的转换。 Reader和Writer是java.io包中所有字符流的抽象基类。提供了输出字符的 API及其部分实现。 字符流 1.Reader Reader类是处理所有字符流输入类的父类。主要有以下方法: 读取字符 public int read() throws IOException; /*读取一个字符,返回值为读取的字符*/ public int read(char cbuf[]) throws IOException; /*读取一系列字符到数组cbuf[]中,返回值为实际读取的字符的数量*/ public abstract int read(char cbuf[],int off,int len) throws IOException; /*读取len个字符,从数组cbuf[]的下标off处开始存放,返回值为实际读取的字符数量,该方法必须由子类实现*/ 标记流 public boolean markSupported(); /*判断当前流是否支持做标记*/    public void mark(int readAheadLimit) throws IOException;    /*给当前流作标记,最多支持readAheadLimit个字符的回溯。*/   public void reset() throws IOException; /*将当前流重置到做标记处*/ 关闭流 public abstract void close() throws IOException; 字符流 2.Writer Reader类是处理所有字符流输出类的父类。主要有以下方法: 向输出流写入字符  public void write(int c) throws IOException;//将整型值c的低16位写入输出流  public void write(char cbuf[]) throws IOException;//将字符数组cbuf写入输出流  public abstract void write(char cbuf[],int off,int len) throws IOException;   /*将字符数组cbuf[]中的从索引为off的位置处开始的len个字符写入输出流*/  public void write(String str) throws IOException;//将字符串str中的字符写入输出流  public void write(String str,int off,int len) throws IOException;/*将字符串str 中从索引off开始处的len个字符写入输出流*/ flush( )   刷空输出流,并输出所有被缓存的字节。 关闭流   public abstract void close() throws IOException; 3. Reader与Writer的子类 从Reader(直接子类6个)和Writer(直接子类7个)派生

文档评论(0)

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

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

1亿VIP精品文档

相关文档