Java_IO相关知识

博学谷IT学习技术支持

File

File是对文件或者文件夹的封装,可以通过它来操作文件,可以获取文件大小,文件名称,文件路径。还有删除的功能。

字节流

如果要使用文件的内容那就要把它加载进内存,然后计算机再从内存中提取出来做相应的逻辑运算。
那怎么才能读文件的内容?
那就要使用输入字节流,一个一个的字节读进内存
如果要把数据写进硬盘,那么就是使用输出字节流写出。

字节缓冲流

不管是一个一个写出或写入字节,这样都是性能比较慢的,就跟出门买菜,买一个菜就回来一趟,在买个菜在回来一趟,那不是得累死。我们可以直接提一个篮子,一批批的买,这样效率就提升很多。
然而字节缓冲流就是来干这个的,它会声明一个数组,直接拿一堆数据回来。

字符流

在计算机中,所有的东西在底层都是字节,那字母a,b,c这些也会有相应的二进制来表达,那就是码表。字母有字母的码表,中文有中文的码表。中文的码表一般是,GBK,UTF-8。
GBK:一个中文代表2个字节
UTF-8:一个中文代表3个字节
如果这个时候,用字节流一个一个的处理,解决不了这些字符的问题,因为字母一个字节,字符多个字节,然后还要找相应的码表,它不知道怎么处理
那么字符流就是来干这个的。
它会去判断该处理几个字节,然后会去查码表,翻译成人类看的懂的字符。

转换流

字符流跟硬盘之间还缺个桥梁,因为硬盘是字节,然后内存里面是字符,他们两类型不一样,所以中间需要个转换器。
转换流就是起的这个作用,它会把字符转换成字节,然后在交给硬盘。

对象操作流

程序中创造了很多对象,如果jvm一关,那对象都没了,那怎么搞?
所以我们能不能把对象也给持久化。
对象操作流就是来干这个的,它会把对象完整的存储到硬盘,然后也可以从硬盘直接读出对象。

Properties

程序还有一些外部配置的一个需求,一般是键值对的体现,当前程序的环境,程序的内存分配大小,如果你想有配置就可以用Properties。
它就相当于Map和IO的结合体。
它会先从文件中读取出来,然后根据文件内容生成键值对,用得时候就跟用HashMap没啥区别。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值