JAVA基础篇IO流

字节输入流的概述
inputStream 是字节输入流,用来读取,可以将文件中的数据读取到JAVA程序中
inputStream 是所有字节输入流的顶层父类,是一个抽象类,如果要用需要使用子类FileinputStream

FileinputStream的构造方法
FileinputStream(String filename)参数要传递一个字符串类型的文件路径,表示要从这个文件中读取数据
FileinputStream(File file)参数要传递一个file类型的文件,表示要从这个文件中读取数据

FileinputStream的其他方法
int read() 读取一个字节,并将读取到的字节返回,如果已经读取结束了,返回-1
int read(byte[] b) 将数据读取到字节数组中,并返回读取到的字节个数,如果已经读取结束了,返回-1
void close()关闭流

字节输入流的使用步骤
创建一个字节输入流对象,绑定一个数据源文件
调用read方法,读取数据
调用close()释放资源

字节数组的长度是表示,一次会读取几个字节
使用字节输入流采用数组的方式,可以提高效率

字节流的概述
Reader是字符输入流,用来读取,可以将文件中的数据读取到java程序中
字符输入流会以字符为单位进行读取,可以读取文件中的中文,reader是所有字符输入流的顶层父类,是一个抽象类,如果要用需要使用子类,最常用的子类是FileReader

FileReader的构造方法
FileReader(String filename)参数要传递一个字符串类型的文件路径,表示从这个文件中读取数据
FileReader(File file)参数要传递一个file类型的文件,表示从这个文件中读取数据

FileReader的其他方法
int read() 读取一个字符并将读取到的字符返回,如果已经读取结束,返回-1
int read(char[] cbuf) 将数据读取到字符数组中并返回读取到的字符格式,如果已经读取结束,返回-1

writer是字符输出流,用来写,可以将java程序中的数据写到文件中,字符输出流是以字符为单位进行写
writer是所有字符输出流的父类,是一个抽象类,如果要用需要使用子类,常用子类 FileWriter

FileWriter的构造方法
FileWriter(String filename)参数要传递一个字符串类型的文件路径,表示要向这个文件中写数据
FileWriter(File file)参数要传一个file的文件,表示要向这个文件中写数据

字符输出流调用write写数据的时候,并没有将数据直接写到文件中,而是写到了内存缓冲区中,如果想要将内存缓冲区中的数据放到文件中,需要进行刷新操作

FileWriter其他方法
void write(String str) 向文件中写一个字符串
void flush() 刷新,将内存缓冲区中的数据刷新到文件中
void close() 关闭流

字符输出流的使用步骤
创建字符输出流对象
调用write方法写数据
刷新
释放资源

只有字符流,并且是字符输出流需要刷新

flush和close的区别
flush 做的仅仅是刷新的操作。流在刷新之后还可以使用
close 先刷新,然后关流 流在关闭之后就不能使用了

字符输入流其他写数据的方法
void write(String str)写一个字符串
void write(String str,int off,int len)写字符串的一部分,参数off表示从哪个位置开始写,参数len表示写几个
void write(int c)向文件中写一个字符
void write(char[] c)向文件中写一个字符数组

属性集
properties 叫做属性集,他是一个双列集合,properties 有以下三个特点
properties 实现了Map接口,拥有map接口中的所有功能
properties 没有泛型,键和值都是字符串
支持对流的操作,可以从流中读取键值对

构造方法
Properties() 空参构造

其他方法
setProperties(String key,String value) 添加键值对
getProperties(String key) 根据键获取对应的值

Set stringProperttyNames() 获取到properties中的所有的键并放入到Set集合中返回

Properties与流相关的方法
void load(InputStream is) 蚕食要传递一个字节输入流
void load(Reader reader) 参数要传递一个字符输入流

使用步骤
创建Properties对象
创建输入流,绑定一个文件
调用load方法,可以将文件中的键值对读取到Properties集合中
关闭流

流绑定的是哪个文件,将来就会将哪个文件中的数据读取到Properties中
properties的核心方法就是load,可以将文件中的键值对读取到Properties集合中

注意
文件的要求 文件一般以.properties结尾(软性要求)
文件中的内容必须是键值对,里面的键值对必须按照固定格式存储(硬性要求)键=值 每个键值对都是一行,键和值之间使用等号分割,每一个键值对都要换行

要求使用properties集合读取config,properties 文件中的键值对 一般用的是字节流来塞值。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值