day012

根据方向:输入流,输出流
根据操作单位:字节流,字符流

字节输入流: InputStream—【抽象】父类–不能实例化
子类1:FileInputStream–文件字节输入流,构造函数的参数:File/String(一个字节一个字节读)
----FIS

		子类2:BufferedInputStream--高效字节输入流------多种优化(一个字节数组一个字节数组地读)
		----BIS

FIS in = new FIS(new File(路径));
FIS in = new FIS(路径);
BIS in = new BIS(new FIS(new File(路径)));
BIS in = new BIS(new FIS(路径));

字符输入流: Reader–抽象父类–不能实例化
FileReader–文件字符输入流-FR
BufferReader–高效字符输入流-BR

FR in = new FR(new File(路径));
FR in = new FR(路径);
BR in = new BR(new FR(new File(路径)));
BR in = new BR(new FR(路径));

字节输出流:OutputStream(抽象父类,不能实例化)
FileOutputStream–文件字节输出流–FOS
BufferOutputStream–高效字节输出流–BOS
FOS out = new FOS(new File(路径));
FOS out = new FOS(路径);
BOS out = new BOS(new FOS(new File(路径)));
BOS out = new BOS(new FOS(路径));

字符输出流:Writer(抽象父类,不能实例化)
FileWriter–文件字符输出流–FW
BufferWiter–高效字符输出流–BW

FW out = new FW(File/File,append,String pathname/String pathname,append);
BW out = new BW(Writer–所以传的是子类FW(上面那四种))

############################################

异常捕获结构
try{
可能会发生异常的代码
}catch(异常类型 异常参数名){
e.printStackTrace();//打印错误信息
}finally{//一定会被执行的代码块
常常用来关闭
}

############################################

成员变量与局部变量
成员变量:类里方法外,会有默认值
局部变量:定义方法里/局部代码块中,必须手动初始化!
整型-0 浮点型-0.0 布尔型-false 字符型-’/u0000’
引用类型-null【除了基本类型以外的类型】

############################################

FileInputStream(File file)
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定。

############################################

因为字符能看懂,所以字符输入输出叫:Reader/Writer

抽象基类,不能实例化,但可以用于接口化编程。

按住ctrl+点击(未定义参数的)函数名—>查看方法重载情况

对IO读写越频繁,效率越低,所以Buffered效率高.

字符流无法处理图片文件的复制
【遇到文字用字符流,图片/音频都用字节流】

输出—即使文件不存在也能自动创建(读取如果不存在则需手动创建)

不覆盖

IO流的继承结构
在java中,根据处理的数据单位不同,可以把流分为字节流和字符流
字节流 : 针对二进制文件
File.InputStream
FileInputStream
BufferedInputStream
File.OutputStream
FileOutputStream
BufferedOutputStream

字符流 : 针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-8
Reader
FileReader
BufferedReader
Writer
FileWriter
BufferedWriter

File文件类
封装一个磁盘路径字符串,对这个路径可以执行一次操作
可以封装文件路径、文件夹路径、不存在的路径

File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建一个新的File实例
new File(“d:/abc/a.txt”);
new File(“d:/abc”,”a.txt”);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值