Flie的常用方法
public boolean createNewFile() 创建文件
1.返回值为true, 说明创建文件成功
2.返回值为false,说明文件已存在,创建文件失败
public boolean mkdir() 创建单层文件夹
1.创建文件夹成功,返回 true
2.创建文件夹失败,返回 false
public boolean mkdirs() 创建多层文件夹
public boolean delete()
1.删除此抽象路径名表示的文件或目录。
2.如果此路径名表示一个目录,则该目录必须为空才能删除
public boolean isDirectory() 判断是否为文件夹
public boolean isFile() 判断是否为文件
public boolean exists() 判断File对象对应的文件或文件夹是否存在
public String getAbsolutePath() 获取当前File的绝对路径
public String getName() 获取当前File对象的文件或文件夹名称
public long length() 获取当前File对象的文件或文件夹的大小(字节)
public File[] listFiles() 获取File所代表目录中所有文件或文件夹的绝对路径
字节流
字节输入流 InputStream 抽象类
FileInputStream 操作文件的字节输入流
字节输出流 OuputStream抽象类
FileOutputStream 操作文件的字节输出流
字符流
字符输入流 Reader抽象类
InputStreamReader 输入操作的转换流
FileReader 用来操作文件的字符输入流(简便的流)
字符输出流 Writer抽象类
OutputStreamWriter 输出操作的转换流
FileWriter 用来操作文件的字符输出流(简便的流)
缓冲流
- 字节流
- 字节输入流 InputStream
- FileInputStream 操作文件的字节输入流
- BufferedInputStream高效的字节输入流
- ObjectInputStream 反序列化流
- 字节输出流 OutputStram
- FileOutputStream 操作文件的字节输出流
- BufferedOutputStream 高效的字节输出流
- ObjectOuputStream 序列化流
- PrintStream 字节打印流
- 字节输入流 InputStream
- 字符流
- 字符输入流 Reader
- FileReader 操作文件的字符输入流
- BufferedReader 高效的字符输入流
- InputStreamReader 输入操作的转换流(把字节流封装成字符流)
- 字符输出流 Writer
- FileWriter 操作文件的字符输出流
- BufferedWriter 高效的字符输出流
- OutputStreamWriter 输出操作的转换流(把字节流封装成字符流)
- PrintWriter 字符打印流
- 字符输入流 Reader
方法:
读数据方法:
read() 一次读一个字节或字符的方法
read(byte[] char[]) 一次读一个数组数据的方法
readLine() 一次读一行字符串的方法(BufferedReader类特有方法)
readObject() 从流中读取对象(ObjectInputStream特有方法)
写数据方法:
write(int) 一次写一个字节或字符到文件中
write(byte[] char[]) 一次写一个数组数据到文件中
write(String) 一次写一个字符串内容到文件中
writeObject(Object ) 写对象到流中(ObjectOutputStream类特有方法)
newLine() 写一个换行符号(BufferedWriter类特有方法)
BufferedReader和BufferedWriter复制文件
char[] ch = new char[1024];
int len ;
while ((len = br.read(ch))!=-1){
bw.write(ch,0,len);
}
Properties
Properties:Map集合的一种,它是Hashtable集合的子集合,它键与值都是String类型,它是唯一能与IO流结合使用的集合
方法
setProperty(String key , String value)
getProperty(String key )
stringPropertyNames() 返回此属性列表中的一组键
load( InputStream in ) 从流所对应的文件中,读数据到集合中(字节流)
load( Reader in ) 从流所对应的文件中,读数据到集合中(字符流)
store( OutputStream out , String message ) 把集合中的数据,写入到流所对应的文件中
store( Writer out , String message) 把集合中的数据,写入到流所对应的文件中
注:message是描述信息可以为null
- 实现文件内容的自动追加
- 构造方法
- FileOutputStream(File file, boolean append)
- FileOutputStream(String fileName, boolean append)
- FileWriter(File, boolean append)
- FileWriter(String fileName, boolean append)
文件内容自动追加
FileWriter fw = new FileWriter(fileName, true);
- 实现文件内容的自动刷新
- 构造方法
- PrintStream(OutputStream out, boolean autoFlush)
- PrintWriter(OutputStream out, boolean autoFlush)
- PrintWriter(Writer out, boolean autoFlush)
- Commons-IO
- 方法
- readFileToString(File file) 读取文件内容,并返回一个String;
- writeStringToFile(File file,String content) 将内容content写入到file中;
- copyDirectoryToDirectory(File srcDir,File destDir);文件夹复制
- copyFileToDirectory (File srcFile,File destFile); 文件复制