Java文件过滤器,java过滤文件名

  Java文件过滤器,java过滤文件名

  

目录

文件类常用的文件类构造方法查看文件的对应信息遍历目录下的文件过滤器遍历子目录删除文件和目录。

 

  00-1010File类用于封装路径,该路径可以是系统字母的绝对路径,也可以是相对于当前目录的相对路径。File类中封装的路径可以指向文件或目录。File类中提供了这些目录或文件的一些常见操作。

  00-1010 File(string pathname)//通过指定string类型文件路径创建新的File对象File (string parent,string child)//通过指定string类型父路径和string类型子路径创建File对象file (file parent,string child)//根据指定的File类父路径和string类型子路径创建File对象。

  

File类

包JS;导入Java . io . file;public class XX { public static void main(String[]args){ File File=new File( example . txt );//获取文件名System.out.println(文件名: file . getname());//获取文件System.out.println的相对路径(文件的相对路径: file . getpath());//获取文件System.out.println的绝对路径(文件的绝对路径: file . getabsolutepath());//获取文件System.out.println的父路径(文件的父路径: file . Get parent());//判断文件是否可读system . out . println(file . can read())?“文件可读”3360“文件不可读”);//确定文件是否可以写入system . out . println(file . can write())?文件可以写入“3360”文件不能写入);//确定是否是同一文件System.out.println(file.isFile())?是文件‘3360’不是文件’);//确定是否是同一目录system . out . println(file . is directory())?文件是目录‘3360’文件不是目录’);//获取文件System.out.println的上次修改时间(上次修改时间为: file . last modified());//获取文件大小System.out.println(文件大小为: file . length() bytes );//文件System.out.println是否删除成功(文件是否删除成功 file . delete()););} }

 

  00-1010 list()方法可以遍历指定目录中的所有文件名。

  包JhiShi导入Java . io . file;public class example 01 { public static void main(String[]args)抛出异常{ File File=new File( c : Users Lenovo idea projects Java se );if(file . is directory()){ String[]names=file . list();for(String name : names){ system . out . println(name);} } } }

  首先,File类中的isDirectory()方法确定路径是否指向现有目录。如果存在,调用list()方法,获取String类型的数组名,其中包含该目录下所有文件的文件名。然后,遍历数组名,依次打印出每个文件的名称。

  

 

  

文件过滤器

 package JhiShi; import java.io.File; import java.io.FilenameFilter; public class Example02 { public static void main(String[] args) throws Exception{ File file=new File("C:\Users\lenovo\IdeaProjects\java se"); FilenameFilter filter=new FilenameFilter() { @Override public boolean accept(File dir, String name) { File currFile=new File(dir,name); if(currFile.isFile()&&name.endsWith(".txt")){ return true; }else{ return false; } } }; if(file.exists()){ String[] lists=file.list(filter); for (String name:lists){ System.out.println(name); } } }

 

  

 

  

对子目录进行遍历

 package JhiShi; import java.io.File; public class Example03 { public static void main(String[] args) throws Exception{ File file=new File("C:\Users\lenovo\IdeaProjects\java se"); fileDir(file); } public static void fileDir(String[] args) { File[]files=dir.listFiles(); for (File file:files){ if(file.isDirectory()){ fileDir(file); } System.out.println(file.getAbsoluteFile()); } } }

通过一个静态方法fileDir(),用于接收一个表示目录的File对象,先调用listFile()方法把该目录下所有的子目录和文件存到一个File类型的数组files中,然后遍历数组files,并且对遍历对象进行判断,如果是目录就从新调用fileDir()方法进行递归,如果是文件则输出文件的路径。

 

  

 

  

删除文件及目录

 package JhiShi; import java.io.File; public class Example03 { public static void main(String[] args) { File file=new File("C:\ABC"); deleteDir(file); } public static void deleteDir(String[] args) { if(dir.exists){ File[]files=dir.listFiles(); for(File file:files){ if(files.isDirectory()){ deleteDir(file); }else{ file.delete(); } } dir.delete(); } } }

定义了一个删除目录的静态方法deleteDir()来接收一个File类型的参数,调用listFiles()方法把这个目录下所有的子目录和文件保存到一个File类型的数组files中,然后遍历files,如果是目录从新调用deleteDir()方法进行递归,如果是文件则直接调用File的delete()方法删除,当删除完这个目录下的所有文件时,再删除这个目录。

 

  注意:Java删除目录是从虚拟机直接删除而不是回收站,一旦删除无法恢复

  到此这篇关于Java File类常用方法与文件过滤器详解的文章就介绍到这了,更多相关Java File类内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: