1.File文件的属性和操作
boolean exists( ) 判断文件或目录是否存在
boolean isFile( ) 判断是否是文件
boolean isDirectory( ) 判断是否是目录
String getPath( ) 返回此对象表示的文件的相对路径名
String getAbsolutePath( ) 返回此对象表示的文件的绝对路径名
String getName( ) 返回此对象表示的文件或目录的名称
boolean delete( ) 删除此对象指定的文件或目录
boolean createNewFile( ) 创建名称的空文件,不创建文件夹
long length() 返回文件的长度,单位为字节, 如果文件不存在,则返回 0L
2.io流的分类:
流:一串流动的字符,以先进先出的方式读取数据的通道。
根据流的方向分为:输入流和输出流。
由处理数据单元大小的分为:字节流和字符流
3.文本文件的读写
普通文本文件的读写---
用FileInputStream和FileOutputStream读写文本文件
用BufferedReader和BufferedWriter读写文本文件
二进制文件的读写---使用DataInputStream和DataOutputStream读写二进制文件
4.字节流 InputStream / OutputStream
4.1 字节输入流:FileInputStream
常用方法
int read( )
int read(byte[] b)
int read(byte[] b,int off,int len)
void close( )
int available()
常用构造方法
FileInputStream(File file)
FileInputStream(String name)
4.2 字节输出流:FileOutputStream
常用方法:
void write(int c)
void write(byte[] buf)
void write(byte[] b,int off,int len)
void close( )
常用构造方法:
FileOutputStream (File file)
FileOutputStream(String name)
FileOutputStream(String name,boolean append)
补充:1.FileOutputStream:对象中地址参数,如果存在直接查找;如果不存在,先创建在查找。
FileInputStream :对象中地址参数,如果不存在报错。
2.FileOutputStream:对象中只有地址参数,输入的数据信息会替换掉原文件中的内容;
再加一个参数true,就可以在内容后面追加。
3.关闭的顺序:先开后关。
5.字符流 Reader / Writer
5.1字符输入流:FileReader
常用方法:int read( )
int read(byte[] c)
read(char[] c,int off,int len)
void close( )
---缓冲字符输入流:BufferedReader
特有方法:readLine()
构造:BufferedReader(Reader in)
5.2字符输出流:FileWriter
常用方法:write(String str)
write(String str,int off,int len)
void close()
void flush()
---缓冲字符输入流:BufferedWriter
构造:BufferedReader(Writer out)
补充:缓冲区---有缓冲区,数据会先存放在缓冲区里,当缓冲区填满后,在整体处理缓冲区
没有缓冲区:数据读一个写一个,效率低,占用服务器资源。
6:二进制文件的读写:DataInputStream 和 DataOutputStream
与字节流结合使用,实现图片的复制