文件操作
File类
Java把文件和目录抽象成一个类File
。
构造方法
File(File parent,String child);
File(String pathname);
File(String parent,String child);
File(URI uri);
File file = new File("F://file.txt");
File file = new File("F:","file.txt");
File file = new File(new File("F:"),"file.txt");
常用的API
boolean canExecute();
boolean canRead();
boolean canWrite();
boolean isFile();
boolean isDirectory();
String getPath();
String getAbsolutePath();
long lastModified();
String getName();
boolean isHidden();
long length();
boolean createNewFile();
boolean mkdir();
boolean mkdirs();
boolean delete();
boolean deleteOnExit();
- 如果文件属于新建文件,没有修改的话那么
modified
方法返回0。 mkdir
在父目录不存在的情况下会创建父目录。mkdirs
在祖先目录不存在的情况下会一次创建祖先目录。getName
会包括的扩展名。delete
不能删除包含文件的目录,也就是说只能删除空目录。
IO
- 按流的方向分为:
输入流
和输出流
。 - 按读写的单位分为:
字节流
和字符流
。 - 按功能分为:
基本流
和包装流
。
输入流
从程序的角度来说,输入流就是把文件内容输入到内存,再通过内存输出到屏幕上。输入流也叫读
,把文件内容读取到内存。
输出流
输出流就是把文件内容从内存输出到磁盘,输出流也叫写
,把内存中的内容写入磁盘。
字节流
字节流把内容按字节来进行读写,适合非文本内容,也叫万能流。字节流分为字节输入流和字节输出流,对应下面有文件字节输入流和文件字节输出流,读取中文字符可能会出现乱码。
字符流
字符流按字符来进行读写,适合文本文件(一个中文字符占用字节2-4)。字符流分为字符输入流和字符输出流,对应下面有文件字符输入流和文件字符输出流。