1。File类:代表与平台无关的文件和目录(文件夹)
File 能够新建,删除,重命名文件和目录,但File不能够访问文件内容的本身
File 的一些方法:
getName():得到文件名 getAbsolutePath():返回绝对路径
getPath() : 得到文件路径 getCanonicalPath():返回规格化以后的路径(将./或者../完善好)
createNewFile():如果文件不存在,可以创建。isFile():判断路径下是否为文件
isDirectory():判断路径下是否为目录
2。IO分类
字节流:可以用来传输任何一种文本类型:mp3,电影,图片,网页,文本
字符流:主要解决文本文件,专门用来处理文本。
大部分中文的文本,一个汉字可能占用的空间不止一个字节。
假设一个汉字需要占用两个字节的空间,如果要用字节流处理文本的话,就需
要读入两个字节,然后再把这两个字节拼成一个完整的汉字。更有可能在 输错误的时候,产生只保存了“半个汉字”这种问题。为了解决这种问题,有了字符流。
3。字节流:
InputStream:所有输入字节流的父类。
OutputStream:所有输出字节流的父类。
以上两个类都是抽象类,无法创建实例,所以用:
FileInputStream,FileOutputStream.两个子类。
4。字符流。
Reader:所有输入字符流的父类。
Writer:所有输出字符流的父类。
同样的,以上两个类是抽象类,所以用:
FileReader,FileWriter两个子类。不过我们大多会运用他的两个缓冲流:读入BufferedReader
写出BufferedWriter:
BufferedReader有一个readeLine()方法,是比较好用的,他会一行一行的读取文本中数据。
贴上用法:
概念问答:
1,java 中有几种类型的流?
字节输入流:InputStream,字节输出流:OutputStream
字符输入流:Reader,字符输出流:Writer
2,什么是 java 序列化,如何实现 java 序列化?
Java 对象的序列化指将一个 java 对象写入 OI 流中,与此对应的是,对象的反序列化则从 IO 流中恢复该 java 对象。
如果要让某个对象支持序列化机制,则必须让它的类是可序列化的,为了让某个类是可序列化的,该类必须实现 Serializable 接口
3,什么是过滤流?简述实现步骤。
过滤流:使用节点流作为输入或输出。过滤流是使用一个已经存在的输入流或输出流连接创建的。
过滤流的使用分为下面四个步骤:
1、 创建节点流。这个步骤是使用过滤流的先决条件,由于过滤流无法直接实现数据传输功能,因
此必须先有一个节点流,才能够进行数据传输。
2、 封装过滤流。所谓的“封装”,指的是创建过滤流的时候,必须以其他的流作为构造方法的参
数。需要注意的是,可以为一个节点流封装多个过滤流。
3、 读/写数据。
4、 关闭外层流。这指的是,关闭流的时候,只需要关闭最外层的过滤流即可,内层流会随着外层
流的关闭而一起被关闭