IO流
- 定义:
用来处理设备之间的传输
- 用途
JAVA中对于数据的操作都是通过流的方式来进行的,所操作的流的对象,都在IO包中
- 划分
按流向分:
输入流 InputStream Reader
输出流 OutStream Writer
- 字符流
定义:可以直接读写字符的IO流 字符流读取字符
先读取字节数据,然后转成字符,如果 要写出,再将字符转成字节写出
- 字符流缓冲区
Writer的缓冲区BufferedWriter 先有流,才有流的缓冲区
void newline()
可以跨平台的行分隔符Reader的缓冲区
BufferedReader String readLine()
读取一个文本行
包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回null Read()
一次读一个 ReadLine 一次读一行 其实是增强了read方法的增强BufferedReader
就是对reader 的增强 ,这种增强叫做装饰设计模式
- -装饰设计模式
当想要对已有的对象进行功能增强时,可以定义类 将已有对象传入 基本已有对象的功能进行增强 那么自定义的这个类,就叫做装饰类
- 字节流
处理流媒体文件 包括图片 音频 视频 也可以处理文本 字符流 用来处理文本的
File
- 只是创建对象,不会创建文件
- 跨平台的分隔符 static String separator File. Separator
Eclipse 方法抽取快捷键 alt+shift+m
方法
- 创建:
boolean createNewFile()
创建文件boolean mkdir()
创建文件夹
boolean mkdirs()
创建文件夹,多层文件夹
- 删除
Boolean RenameTo(File file)
把文件重命名 当路径名相同,意为改名 当路径名不同是,意为剪切,并改名
Boolean delete()
删除文件或者文件夹 删除不走回收站 可以删除文件和文件夹 要删除文件夹,必须先清空文件夹
文件夹中不能包含文件 文件夹
- -判断
Boolean isDirectory()
是否是目录Boolean isFile()
对否是文件Boolean isHidden()
判断是否隐藏Boolean exits()
判断文件、文件夹Boolean canRead()
是否可读
Boolean canWrite()
是否可写Boolean canExecute()
是否可执行
- -获取
String getAbsolutePath()
获取绝对路径
String getName()
获取名称
Long length
获取长度
Long lastmodified()
获取最后一次修改的时间
File[] listFiles()
获取指定目录下的所有文件/文件夹的File对象