一.流的概念
所谓IO,也就是Input与Output的缩写
流是一组流动的数据的总称。类似于水流
流是有方向性的。我们应该以当前程序为参照物。
如果说是程序中要获得外面的数据,那么我们应该使用输入流如果由程序向外面扔数据就应该是输出流
二.IO的方法
createNewFile方法是创建一个文件
mkdir/mkdirs方法是创建一个文件夹
exists判断所关联的文件是否存在
delete删除所关联的文件
equals在File类中是比较的文件名字相同为true,不同为false
getAbsolutePath获得文件的绝对路径
getName获得文件名
getParent是获得文件的上一次父目录的名字
getParentFile是获得文件的上一次父目录的对象
isDirectory判断是否是目录
isFile判断是否是文件
isHidden判断是否是隐藏文件
lastModified获得文件的最后修改时间 long date 格式
length获得文件长度以字节为单位
list是获得文件夹下面的所有文件的名字列表 返回String[]类型
listFile是获得文件夹下面的所有文件的对象列表
renameTo是重命名
listRoots返回该文件夹下面所有的文件
三.FileInputStream与BufferedInputStream区别:
FileInputStream是字节流,BufferedInputStream是字节缓冲流,使用BufferedInputStream读资源比FileInputStream取 资源的效率高(BufferedInputStream的read方法会读取尽可能多的字节),且FileInputStream对象的read方法会出现阻 塞;
BufferedInputStream的基本用法和FileInputStream是差不多的但是BufferedInputStream会减少磁盘IO的开销它的性能 高于FileInputStream以后用到InputStream时尽量用BufferedInputStream包装一次
四.序列化与反序列化的区别
序列化是将对象状态转换为可保持或传输的格式的过程。反序列化是将流转换为对象,这两个过程结合起来,可以轻松地存 储和传输数据
序列化:将一个对象从内存当中 转换到介质(存在硬盘上的介质)
反序列化:将对象从介质转换为内存里面的对象的过程称为反序列化