Java中的File类和IO流

Java中的File类和IO流

一、File类

1、简介
File文件和目录路径名的抽象表示形式
2、构造函数
File(String pathname) :字符串路径封装成File对象
File(String parent,String child):父级路径和子级路径
File(File parent,String child):File类型的父级路径和子级路径
3、创建和删除
boolean createNewFile()
boolean mkdir():单级文件夹
boolean mkdirs():多级文件夹
boolean delete()
4、判断功能
boolean exists()
boolean isAbsolute():判断当前路路径是否是绝对路径
boolean isDirectory()
boolean isFile()
boolean isHidden():判断当前路径是否是隐藏文件
5、获得功能和修改名字功能
File getAbsoluteFile()
String getAbsolutePath()
String getParent()
File getParentFile()
String getName()
String getPath()
long lastModified():以毫秒值返回最后修改时间
long length():返回文件的字节数
6、其它获取功能
String[] list():以字符串数组的形式返回当前路径下所有的文件和文件夹的名称
File[] listFiles():以File对象的形式返回当前路径下所有的文件和文件夹的名称
static File[] listRoots():获取计算机中所有的盘符
7、字节流和字符流
字节流可以操作所有类型的文件,包括图片等二进制文件,FileInputStream/FileOutputStream
字符流只能用来操作纯文本类型的文件,不能操作字节类型的文件

二、IO流

1、简介
IO流是传输数据的方式,按照流向分为输入流和输出流
2、FileWriter
(1)写数据的5个方法
void write(String str)
void write(String str,int index,int len)
void write(int char)
void write(char[] chars)
void write(char[] chars,int index,int len)
(2)成员方法
void write(String str)向文件中写str
void flush() 将内存中的数据刷新到文件中
(3)代码
//创建输出流对象
FileWriter fw = new FileWriter(“d:\x.txt”);
fw.write(“IO流”);
//数据没有直接写到文件,其实是写到了内存缓冲区
fw.flush();
//通知系统释放和该文件相关的资源
fw.close();
(4)close和flush的区别
close():先刷新缓冲区,然后通知系统释放资源,流对象不可再被使用了。
flush():刷新缓冲区,不释放资源,流对象还可以继续使用。
(5)换行和追加写入
换行:windows:\r\n
BufferedWriter.newLine();BufferedReader.readLine
追加写入:FileWriter(String fileName, boolean append)
3、FileReader
(1)代码
//创建输入流对象
FileReader fr = new FileReader(“1.java”);
//读取
fr.read();
fr.close();
4、缓冲流
(1)
BufferedWriter:将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。
BufferedReader:从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。
(2)BufferedWriter代码
BufferedWriter bw = new BufferedWriter(new FileWriter(“xxx.txt”));
bw.write(“xxx”);
(3)BufferedReader代码
BufferedReader br = new BufferedReader(new FileReader(“xxx.java”));

posted @ 2020-02-26 15:07  李泽坤  阅读(159)  评论(0编辑  收藏  举报