[知了堂学习笔记]IO流

1.什么是IO流
创建文件,创建目录
拷贝视频,拷贝文件
读取文件中内容信息
读取键盘输入的信息
网络文件传输
2.IO流的分类
字节流:拷贝视频,拷贝文件。因为操作必须精确到字节
字符流:文件中的内容,把内容进行输出
字节流和字符流的实现方式:输入流和输出流

3.什么是输入流和输出流
文件的拷贝,它需要完成一个动作的实现。
第一步:选中源文件(对应程序中的输入流)
第二步:拷贝操作(IO流中read和write的操作)
第三步:选择拷贝的地方,目标文件(对应程序中的输出流)

难点:不知道输入流什么时候用,也不知道输出流什么时候用

4.IO流要学习的内容
IO流的所有应用都在java API文档中 java.IO包中
文件操作,java.IO.File类
字节流:InputStream,OutputStream
字符流:Reader,Writer

5.File类

File类的结构 构造方法:只提供带参数的构造方法
File(File parent,String child):、在已有的路径下面去创建一个文件或者一个目录
File(String pathname):在给定的路径中创建一个文件或一个目录
File(String parent, String child):在已有的路径下面去创建一个文件或者一个目录
File(URI uri)
普通方法:
Boolean createNewFile():创建一个文件
Boolean delete():删除文件或目录
Boolean exists():文件或目录是否存在
String getAbsolutePath():返回文件或者目录的绝对路径
File getAbsoluteFile():返回文件和目录的绝对路径,但是这个绝对路径是由File对象来表示
String getName():返回文件或者目录的名称
File getParentFile():返回父级目录对象
String path():返回文件或者目录的路径
Boolean isDirectory():判断是否是目录
Boolean isFile():判断是否是文件
Long length():返回文件大小
File[] listFiles():返回当前目录下的文件或目录
Boolean mkdirs():创建多级目录

6.File类的应用
案例:创建目录
先要创建File类的对象
调用mkdirs
测试是否创建好目录(利用JUnit来测试)

这里写图片描述

案例:创建文件
先创建File类对象、
调用createNewFile

这里写图片描述

案例:删除目录
先创建File类对象
调用delete,注意如果有文件的存在,则目录删除不掉

这里写图片描述

案例:获取目录下文件(一级目录)
先要创建File对象
调用listFiles

这里写图片描述

案例:获取文件的大小
创建File对象
判断是否是文件
计算文件的大小

这里写图片描述

案例:获取文件安的路径

getPath
getAbsolutePath
getAbsoluteFile

这里写图片描述

7.任务
将某一个盘符下的所有文件找到,同时输出是目录还是文件,且这个盘符的大小是多少
思路:采用递归方法来完成目录遍历
什么是递归:方法内部调用自己的方法,方法具备循环的特性

案例:完成1+2+3+….+100的运算,采用递归算法完成

这里写图片描述

案例:利用递归将某一个目录下的所有文件和子目录进行输出

这里写图片描述

案例:能够遍历出所有文件,则计算目录的大小是多少

这里写图片描述

8.字节流
字节流的结构
字节的输入流:InputStream
字节的输出流:OutputStream
重点如下:
InputStream,OutputStream都是抽象类
输入流的方法:read(),close(),available(),这些方法主要是为了读取数据,关闭IO流,计算文件大小
输出流的方法:write(),close(),flush(),这些方法主要是为了写数据,关闭IO流,刷新缓存

9.掌握IO流的用法

这里写图片描述

10.文件拷贝
实现文件拷贝的思路:
选择使用什么类型的流(字节流,字符流)
因为文件拷贝是一种二进制流, 拷贝的过程通过读取字节完成拷贝工作
所以我们选择字节流

这里写图片描述

11.字符流
输入流:reader,抽象类
输出流:writer,抽象类
读取数据的时候通过read
写入数据的时候通过write

12.掌握字符流的用法

这里写图片描述

13.读取文件中内容
案例:读取txt文件中内容并输出到控制台
读取txt文件中内容使用reader
读出来的内容写入到Console,我们采用System.out.printIn(…)

这里写图片描述

这里写图片描述

14.写内容到文件里面
案例:先读取到txt文件的内容,然后将此内容写入到word文档内
输入流: BufferedReader
输出流:BufferedWriter

这里写图片描述


请关注“知了堂学习社区”,地址:http://www.zhiliaotang.com/portal.php

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于C++&OPENCV 的全景图像拼接 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在提供更强大的编程能力,包括面向对象编程和泛型编程的支持。C++支持数据封装、继承和多态等面向对象编程的特性和泛型编程的模板,以及丰富的标准库,提供了大量的数据结构和算法,极大地提高了开发效率。12 C++是一种静态类型的、编译式的、通用的、大小写敏感的编程语言,它综合了高级语言和低级语言的特点。C++的语法与C语言非常相似,但增加了许多面向对象编程的特性,如类、对象、封装、继承和多态等。这使得C++既保持了C语言的低级特性,如直接访问硬件的能力,又提供了高级语言的特性,如数据封装和代码重用。13 C++的应用领域非常广泛,包括但不限于教育、系统开发、游戏开发、嵌入式系统、工业和商业应用、科研和高性能计算等领域。在教育领域,C++因其结构化和面向对象的特性,常被选为计算机科学和工程专业的入门编程语言。在系统开发领域,C++因其高效性和灵活性,经常被作为开发语言。游戏开发领域中,C++由于其高效性和广泛应用,在开发高性能游戏和游戏引擎中扮演着重要角色。在嵌入式系统领域,C++的高效和灵活性使其成为理想选择。此外,C++还广泛应用于桌面应用、Web浏览器、操作系统、编译器、媒体应用程序、数据库引擎、医疗工程和机器人等领域。16 学习C++的关键是理解其核心概念和编程风格,而不是过于深入技术细节。C++支持多种编程风格,每种风格都能有效地保证运行时间效率和空间效率。因此,无论是初学者还是经验丰富的程序员,都可以通过C++来设计和实现新系统或维护旧系统。3

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值