java.io包下的File类用于描述和创建一个文件或文件夹对象,只能对文件或文件夹做一些简单操作,不能修改文件的内容,功能比较有限。下面是对于File类中常用方法的程序演示。
[1] 演示程序一
1 package pack01; 2 3 import java.io.*; 4 import java.sql.Date; 5 6 public class FileTest { 7 public static void main(String[] args) { 8 9 File file1 = new File("d:/TEST/MyFile1.txt"); //该文件存在 10 File file2 = new File("d:/TEST/MyFile2.txt"); //该文件不存在 11 12 sop( file1.getName() ); //获取文件名 13 sop( file1.getPath() ); //获取文件路径 14 sop( file1.getAbsoluteFile() ); //获取文件的绝对路径,getAbsoluteFile返回File类对象 15 sop( file1.getAbsolutePath() ); //获取文件的绝对路径,getAbsolutePath返回代表路径的字符串 16 sop( file1.getParent() ); //获取所在的文件夹的名字 17 18 sop( file1.renameTo(file2) ); 19 //将对象file1代表的文件MyFile1.txt重命名,并传送到对象file2指定的路径下 20 //使用要求:对象file1代表的文件MyFile1.txt必须存在 21 //....对象file2代表的文件所处的目录必须存在,但是文件本身MyFile2.txt不能存在 22 23 sop( file1.exists() ); //判断文件是否存在 24 sop( file1.isFile() ); //判断是否是一个文件 25 sop( file1.isDirectory() ); //判断是否是一个文件夹 26 sop( file1.canRead() ); //判断是否可读 27 sop( file1.canWrite() ); //判断是否可写 28 sop( new Date( file1.lastModified() ) );//最后修改时间(创建一个Date类对象输出) 29 sop( file1.length() ); //文件的大小 30 31 } 32 33 public static void sop(Object obj) { 34 System.out.println(obj); 35 System.out.println(); 36 } 37 }
[2] 演示程序二
1 /*-------------------- 2 createNewFile()----创建新的文件夹 3 delete()-----------删除已存在的文件或文件夹 4 mkdir()------------在已有的目录下创建新的目录 5 mkdirs()-----------创建一个完整的路径,即包括所有的上层目录 6 list()-------------获取目录下的所有内容,返回String类型数组 7 listFiles()--------获取目录下的所有内容,返回File类型数组 8 ----------------------*/ 9 package pack01; 10 11 import java.io.*; 12 13 public class FileTest02 { 14 public static void main(String[] args) throws IOException { 15 16 File file1 = new File("d:/TEST/MyFile1.txt"); //该文件已存在 17 File folder1 = new File("d:/TEST/MyFolder1"); //该文件夹已存在 18 File folder2 = new File("d:/TEST/MyFolder2"); //该文件夹已存在 19 20 File folderNO = new File("d:/TESTNO/MyFolderNO"); 21 //文件夹TEST2和MyFolder2均不存在 22 23 24 25 sop( file1.delete() ); //将对象file1代表的文件MyFile1.txt删除,返回值为true 26 sop( file1.createNewFile() ); //创建对象file1代表的文件MyFile1.txt,返回值为true 27 28 sop( folder1.delete() ); //删除对象folder代表的文件夹MyFolder,返回值为true 29 sop( folder1.mkdir() ); //创建对象folder代表的文件夹MyFolder,返回值为true 30 31 sop( folderNO.mkdir() ); //返回值为false 32 sop( folderNO.mkdirs() );//返回值为true 33 //当想要创建的文件夹的上层目录不存在时,要使用方法mkdirs(); 34 35 //list()方法返回String类型数组 36 String s[] = folder2.list(); 37 for( int i=0; i<s.length; ++i ) { 38 System.out.print(s[i] + " "); 39 } 40 System.out.println(); 41 42 //listFiles()方法返回File类型数组 43 File f[] = folder2.listFiles(); 44 for( int i=0; i<f.length; ++i ) { 45 System.out.print( f[i].getName() + " " ); //使用getName()方法获取File对象名字 46 } 47 48 } 49 50 public static void sop(Object obj) { 51 System.out.println(obj); 52 System.out.println(); 53 } 54 55 }
注:希望与各位读者相互交流,共同学习进步。