Java IO-file类
------------------------方法.工具----------------------------
获取File路径和检测状态:
操作File路径和名称:
File getAbsoluteFile() :获取绝对路径
String getAbsolutePath():获取绝对路径
String getPath() :获取文件路径
String getName() :获取文件名称
File getParentFile():获取上级目录文件
String getParent() :获取上级目录路径
检测File状态的方法:
Boolean canExecute() :判断是否是可执行文件
Boolean canRead() :判断该文件是否可读
Boolean canWrite():判断该文件是否可写
Boolean isHidden():判断该文件是否是隐藏文件
long lastModified():判断该文件的最后修改时间
long length():获取该文件的长度大小(单位字节)
File类中方法-文件操作:
Boolean isFile() :是否是文件
Boolean createNewFile() :创建新的文件(此方法返回true,如果指定的文件不存在,并已成功创建。如果该文件存在,该方法返回false。)
static File createTempFile(String prefix, String suffix) :创建临时文件
boolean delete() :删除文件
void deleteOnExit() :在JVM停止时删除文件
boolean exists():判断文件是否存在
Boolean renameTo(File dest) :重新修改名称
---------------------------------------------------------------------
File类中方法-目录操作
Boolean isDirectory() :判断是否是目录
Boolean mkdir() :创建当前目录
Boolean mkdirs() :创建当前目录和上级目录
static File[] listRoots() :列出系统盘符
String[] list() :列出所有的文件名
File[] listFiles() :列出所有文件对象
list()方法是返回某个目录下的所有文件和目录的文件名,返回的是String数组
listFiles()方法是返回某个目录下所有文件和目录的绝对路径,返回的是File数组
------------------------案例----------------------------
file1
1 //案例1:将磁盘某个目录下的文件和目录打印出来看看 2 //File file = new File("E:\\javaAll\\01javase\\课堂笔记"); 3 File file = new File("E:/javaAll/01javase/课堂笔记"); 4 5 if(file.exists()){//判断文件夹(目录)是否存在 6 String[] lists = file.list(); 7 for (String string : lists) { 8 System.out.println("string = "+string); 9 } 10 11 }else{ 12 System.out.println("该文件夹'目录'不存在"); 13 }
file2
1 // 案例2:在案例1的基础上,将目录(文件夹)和文件分别做一个说明 2 public static void main(String[] args) { 3 File file = new File("E:/javaAll/01javase/课堂笔记"); 4 if(file.exists()){ 5 File[] files = file.listFiles(); 6 for (File file2 : files) { 7 if(file2.isFile()){ //判断是否是文件 8 System.out.println(file2.getName()+" 文件" +file2.length()+"字节"); 9 }else{ 10 System.out.println(file2.getName()+" 目录"); 11 } 12 } 13 15 }else{ 16 System.out.println("目录不存在"); 17 } 18 }
file3
1 public class FileDemo03 { 2 //案例3:在上面案例的基础上,希望能够遍历某个目录下的,直到整个目录下没有文件夹为止. 3 4 public static void showFiles(File file){ 5 if(file.isFile()){ //文件 6 System.out.println(file.getAbsolutePath()+","+ 7 file.getName()+",大小:"+file.length()+",最后修改时间:"+ 8 new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"). 9 format(new Date(file.lastModified()))); 10 }else{ //文件夹 11 File[] listFiles = file.listFiles();//子目录和文件 12 for (File file2 : listFiles) { 13 showFiles(file2);//自己调用自己 递归 14 } 15 } 16 } 17 18 19 public static void main(String[] args) { 20 File file = new File("E:/javaAll/01javase/课堂笔记"); 21 if(file.exists()){ 22 showFiles(file); 23 } 24 25 26 } 27 28 }