Day16总结

File

常规的方法

  1. 创建文件 public boolean createNewFile()

  2. 创建文件夹 public boolean mkdir()

  3. 创建文件夹以及父目录 public boolean mkdirs()

  4. 删除文件 public boolean delete()
    判断性:

  5. public boolean exists() ==>判断文件是否存在

  6. public boolean isFile() ==>判断是否是一个文件

  7. public boolean isDirectory() ==>判断是否是一个文件夹

  8. public boolean isHidden() ==>判断是否是隐藏文件
    得到性:

  9. public String getAbsolutePath() ==>返回文件或者文件的绝对路径

  10. public String getName() ==> 返回的是文件或者文件夹名称

  11. public String getParent() ==> 返回的是文件或者文件夹的父目录

  12. public String getPath() ==> 返回就是文件的构造方式中的地址

  13. public String[] list() ==>返回是当前目录下所以的文件

  14. public File[] listFiles(FileFilter filter) ==>使用过滤器来返回有效的文件

  15. FileFilter 文件过滤器 ==> 用于对文件进行过滤(把不必要的文件进行过滤)

  16. public long length() ==>返回的是文件的长度(文件所占的字节数)

IO流

流对象的划分:
按照流向来进行划分

  • 输入流 InputStream

  • 输出流 OutputStream

按照类型来进行划分

  • 节流 InputStream 输入 OutputStream 输出
  • 字符流 Reader 读 Writer写
    高效流
    1.两个高效流 BufferInputStream BufferOutputStream
    2.这两个流本身没有读写文件的功能 只是对FileIntputStream 与FileOutputStream 进行分装
    3.这两个流读写的原理 就是是使用缓冲区来进行的读写(把字节读取到指定的数组一样),只是这两个流内部封装一个数组 这个数组的长度8192字节
    读取原理:也就是将文件中的数据 一次性读取到 字节数组中,读取8192个字节
    下一次再读取的数据是不是从磁盘中获取数据 而是从缓冲区数组中获取数据
    如果 数组的字节(8192) 都读取完了之后 会从磁盘中再次读取8192个保存字节数组
    高效的原因: 避免反复去向磁盘中读取的数据 而直接从内存中的字节数组中读取
    写数据也是同样的道理

什么是java序列化,如何实现java序列化

  • 序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。
    可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。
  • 序列化是为了解决在对对象流进行读写操作时所引发的问题。

序列化的实现:
1.将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,
2. implements Serializable只是为了标注该对象是可被序列化的,
3. 然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,
4.接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值