本帖最后由 小石姐姐 于 2018-4-26 17:21 编辑
IO流
IO流的概述和分类File类的概述和常用功能- File : 文件和目录 路径的表现形式
- 是文件和目录的路径名的抽象表现形式
- 构造方法: (注意:不会在磁盘上创建这个文件)
- File(String pathname);将指定的路径名转换成一个File对象,此对象指向了一个路径.
- File(String parent,String chld);根据指定的父路径和文件路径创建File对象
- File(File parent, String chile);根据指定的父路径对象和文件路径创建File对象
- 构造方法只是创建一个对象,指向路径,不是创建文件或文件
- File的常用功能
- 创建功能:
- boolean createNewFile();只能创建文件,不能创建目录.
- 删除功能:
- 获取功能
- 判断功能
- boolean exists();判断文件或者文件夹是否存在,如果存在返回true,否则返回false;
- boolean isAbsolute();判断File对象指向的路径是否是绝对路径,如果是绝对路径则返回true,否则返回false;
- boolean isDirectory();判断File对象是否是文件夹,是文件夹则返回true,否则返回false.
- boolean isFile();判断File对象是否是文件,是文件则返回true,不是则返回false.
- boolean isHidden();判断File对象指向的路径是否有隐藏属性,如果隐藏了返回true,否则返回false.
- 修改功能(一般修改文件或文件夹的名字)
File类的创建和删除功能- 绝对路径:固定不可改变的路径,以盘符开头
- 相对路径: 相对某个参照物,不能以盘符开头
- 删除一个文件夹,则他里面不能有目录或文件,
- 创建功能
- boolean createNewFile();当前 文件不存在是创建文件并返回true,否则返回flase.只能创建文件,不能创建目录
- boolean mkdir();当前指定 文件夹不存在就创建文件夹并返回true,否则返回flase.
- boolean mkdirs();创建指定文件夹,当文件夹所在的目录不存在,则顺道一块创建了.(创建多级文件夹)
- 删除功能
- boolean delete();当指定的文件或文件夹存在则删除文件或文件夹,并返回true,否则返回false,
- 如果是多级目录,则删除最后一个,
- delete()删除的文件或文件夹不进回收站,直接永久删除!!
- File类的获取功能和修改名字功能
- File getAbsoluteFile();以File对象的形式返回当前File对象所指向的绝对路径
- String getAbsolutePath();返回File对象所指向的绝对路径
- String getParent();
- String getParentFile();
- String getName();获取文件或文件夹的名称
- String getPath();返回创建File对象时给的路径.
- long getlastModified();以毫秒的形式返回此文件或文件夹最后修改的时间.
- long length();返回 文件的字节数!!
- 修改功能
- boolean renameTo(File dest);参数是个对象.将当前File对象所指向的路径修改为指定File所指向的路径.
- 注意: 修改的文件或文件夹的名字不能存在,如果存在返回false,修改不成功.
File的重要获取功能- String[] list();返回的是当前路径下所有的文件和文件夹名称.
- File[] listFiles();返回的是当前路径下所有的文件和文件夹的File对象,对象可以调用方法
- 注意返回值类型,是字符串还是File对象!!
删除指定目录(包含子目录)- 先判断是否存在
- 如果存在判断是否是文件夹
- 如果是文件夹就获取文件内容存入File对象数组
- 遍历数组,删除,
- 删完子文件,删除自己.
IO流分类- 流向
- 输入流 读取数据 FileReader Reader
- 输出流 写出数据 FileWriter Writer
数据类型
- 字节流
- 字节输入流
- 字节输出流
- 目前用的是io包下的字节输入输出流
- 字节输出流可以不用刷新(即,不用调用flush())
字符流
字节流可以处理任何文件,音频,视频,文件都可以,字符流只能处理一部分,字符流可以处理的字节流都可以处理 - 二进制文件只能使用字节流进行复制(使用windows自带记事本打开读不懂的文件)
- 文本文件的复制即可使用字节流,也可以使用字符流
- 字符流复制二进制文件会丢失数据.
|
|