中职示范校建设专题网站,网站策划报告书怎么做,如何快速推广一个新产品,willfast优化工具下载File类介绍File是java.io包下面的一个类#xff0c;代表与平台无关的文件或者目录。JAVA中#xff0c;无论文件还是目录#xff0c;都可以看作File类的一个对象。File类能对文件或目录新建#xff0c;删除#xff0c;获取属性等操作#xff0c;但是不能直接操作文件内容(…File类介绍File是java.io包下面的一个类代表与平台无关的文件或者目录。JAVA中无论文件还是目录都可以看作File类的一个对象。File类能对文件或目录新建删除获取属性等操作但是不能直接操作文件内容(文件内容需要用数据流访问)。JVM默认会将workspace作为相对路径即user.dir系统变量所指路径, 即如果这样初始化file对象File file new File(.); 就是获取了user.dir路径。File类的常用方法String getName() -如果file对象是一个文件则返回文件名如果是路径则返回路径的最后一级File getAbsoluteFile() -返回绝对路径String getParent() -返回file对象所在目录的父目录File类检查文件exists()-文件或目录是否存在canRead()-是否可读isFile()-是否是文件isDirectory()-是否是目录File类获取文件属性long lastModified() -最后修改时间long length() -文件长度File类进行文件操作createFile() -成功true失败falsedelete()mkdir() -创建目录 file对象必须对应一个路径String[] list() - 如果file对象是一个路径list()将返回一个数组如果路径下没有文件和子目录则数组为empty如果file对象是一个文件或者file路径不存在或者发生IO错误则list()返回nullFile[] listFiles() -同上只不过返回的是File类型数组文件过滤器FilenameFilter接口如果FilenameFilter作为file.list()的参数传入实现FilenameFilter接口的accept方法可以实现文件过滤。accept方法有两个参数dir和name通常可以对name做条件过滤。下面是File类的综合演示1 packageio;23 importjava.io.File;4 importjava.io.FilenameFilter;5 importjava.io.IOException;67 public classFileTest {8 public static void main(String[] args) throwsIOException {9 //JVM默认会将workspace作为相对路径即user.dir系统变量所指路径10 File file new File(.);11 File file2 new File(C:/PROJECT/JavaBasic/PROJECT_JavaBasic/tmp.txt);12 File file3 new File(./tmp.txt);13 //如果file对象是一个文件则返回文件名如果是路径则返回路径的最后一级14 System.out.println(file.getName());15 //当file为相对路径时获取父路径可能会出错16 file3.delete();17 System.out.println(父路径:file3.getParent());18 //获取绝对路径19 System.out.println(file.getAbsoluteFile());20 //getAbsoluteFile返回的是File类型 getAbsolutePath则返回String类型21 System.out.println(file.getAbsoluteFile().getParent());22 //在当前路径下创建一个临时文件第三个参数必须是路径否则会报错23 File tmpFile File.createTempFile(aaa, .txt, file);24 //JVM退出时删除该文件25 tmpFile.deleteOnExit();26 //以系统时间作为名称创建文件27 File newFile new File(System.currentTimeMillis());28 System.out.println(newFile是否存在newFile.exists());29 //以指定file对象来创建文件30 newFile.createNewFile();31 System.out.println(newFile是否存是文件newFile.isFile());32 System.out.println(newFile是否存是目录newFile.isDirectory());33 System.out.println(以newFile对象创建目录是否成功:newFile.mkdir());34 //如果file对象是一个路径list()将返回一个数组如果路径下没有文件和子目录则数组为empty35 //如果file对象是一个文件或者file路径不存在或者发生IO错误则list()返回null36 String[] fileList file.list();37 System.out.println(当前路径下的所有文件和目录如下);38 for(String fileName : fileList) {39 System.out.println(fileName);40 }41 //listRoots静态方法列出所有磁盘根路径42 File[] roots File.listRoots();43 System.out.println(系统所有磁盘根路径如下);44 for(File root : roots) {45 System.out.println(root);46 }4748 String[] nameList file.list(newFilenameFilter() {49 Override50 public booleanaccept(File dir, String name) {51 //TODO Auto-generated method stub52 return name.endsWith(.txt) || newFile(name).isDirectory();53 }54 });55 System.out.println(过滤条件后如下);56 for(String filterName : nameList) {57 System.out.println(filterName);58 }5960 }61 }输出结果如下1 .2 父路径:.3 C:\PROJECT\JavaBasic\PROJECT_JavaBasic\.4 C:\PROJECT\JavaBasic\PROJECT_JavaBasic5 newFile是否存在false6 newFile是否存是文件true7 newFile是否存是目录false8 以newFile对象创建目录是否成功:false9 当前路径下的所有文件和目录如下10 .classpath11 .project12 .settings13 148052133210614 148052135784315 148052137818716 148052244861217 148052247151118 148052247741319 148052248494120 148052250525321 aaa2174524463556527449.txt22 bin23 src24 系统所有磁盘根路径如下25 C:\26 D:\27 E:\28 F:\29 过滤条件后如下30 .settings31 aaa2174524463556527449.txt32 bin33 src