javaIO流讲述.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
File类练习 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称 文件名称过滤器的实现思想及代码 public String[] list(FilenameFilter filter) public File[] listFiles(FilenameFilter filter) 查看源码看执行流程 递归的思想概述 递归 方法定义中调用方法本身的现象 递归注意实现 要有出口,否则就是死递归 次数不能太多,否则就内存溢出 构造方法不能递归使用 递归解决问题的思想及内存图 递归解决问题的思想 找到出口 找到规律 求阶乘案例 普通for循环 递归实现 画内存图 断点查看执行流程 递归练习 兔子问题(斐波那契数列) 斐波那契数列1,2,3,5,8,13,21,34 (第一项和第二项是1和2,第三项开始,后一项是前两项的和) 递归遍历目录下指定后缀名结尾的文件名称 递归删除带内容的目录 IO流概述 IO流用来处理设备之间的数据传输 上传文件和下载文件 Java对数据的操作是通过流的方式 Java用于操作流的对象都在IO包中 IO流分类 按照数据流向 输入流 读入数据 输出流 写出数据 按照数据类型 字节流 字符流 什么情况下使用哪种流呢? 如果数据所在的文件通过windows自带的记事本打开并能读懂里面的内容,就用字符流。其他用字节流。 如果你什么都不知道,就用字节流 IO流常用基类 字节流的抽象基类: InputStream ,OutputStream。 字符流的抽象基类: Reader , Writer。 注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。 如:InputStream的子类FileInputStream。 如:Reader的子类FileReader。 字节流写数据 OutputStream FileOutputStream 往一个文本文件中写一句话:”helloworld” 分析发现其实更适合用字符流,但是由于字节流先出现,所以,我们考虑先使用字节流FileOutputStream的构造方法 FileOutputStream(File file) FileOutputStream(String name) 字节流写数据的方式 public void write(int b) public void write(byte[] b) public void write(byte[] b,int off,int len) 字节流写数据常见问题 创建字节输出流到底做了哪些事情? 数据写成功后,为什么要close()? 如何实现数据的换行? 如何实现数据的追加写入? 字节流写数据加入异常处理 加入异常处理的IO流操作 字节流读取数据 InputStream FileInputStream 把刚才写的数据读取出来显示在控制台 FileInputStream的构造方法 FileInputStream(File file) FileInputStream(String name) FileInputStream的成员方法 public int read() public int read(byte[] b) 字节流读取数据两种方式图解比较 一次读取一个字节 一次读取一个字节数组 每次可以读取多个数据,提高了操作效率 字节流复制数据练习 把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中 把c:\\a.txt内容复制到d:\\b.txt中 把e:\\林青霞.jpg内容复制到当前项目目录下的mn.jpg中 把e:\\蝴蝶飞呀.mp3复制到当前项目目录下的copy.mp4中 字节缓冲流 字节流一次读写一个数组的速度明显比一次读写一个字节的速度快很多,这是加入了数组这样的缓冲区效果,java本身在设计的时候,也考虑到了这样的设计思想(装饰设计模式后面讲解),所以提供了字节缓冲区流 字节缓冲输出流 BufferedOutputStream 字节缓冲输入流 BufferedInputStream 字节缓冲流复制数据练习 把d:\demo\\16.jpg内容复制到当前项目目录下的mn.jpg中 把d:\\童年.mp4复制到当前项目目录下的copy.mp4中 四种方式比较复制效率 转换流出现的原因及思想 由于字节流操作中文不是特别方便,所以,java就提供了转换流。 字符流=字节流+编码表。 编码表概述和常见的编码表 编码表 由字符及其对应的数值组成的一张表 常见编码表 ASCII/Unicode 字符集 ISO-8859-1 GB2312/GBK/GB18030 BIG5 UTF-8 字符串中的编码问题 编码 把看得懂的变成看不懂的 解码 把看不懂的变成看得懂的 转换流概述

文档评论(0)

5500046 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档