zoukankan      html  css  js  c++  java
  • java 19 -14 File类的判断并输出案例

     1 package zl_file;
     2 
     3 import java.io.File;
     4 import java.io.FilenameFilter;
     5 
     6 /*
     7   需求: 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称
     8    分析:
     9  两种方式:
    10  A:先获取所有的,然后遍历的时候,依次判断,如果满足条件就输出。
    11          a:封装h判断目录
    12           b:获取该目录下所有文件或者文件夹的File数组
    13           c:遍历该File数组,得到每一个File对象,然后判断
    14           d:是否是文件
    15               是:继续判断是否以.jpg结尾
    16                   是:就输出该文件名称
    17                   否:不搭理它
    18               否:不搭理它
    19               
    20       
    21  B: 获取的时候就已经是满足条件的了,然后输出即可。
    22          要想实现这个效果,就必须学习一个接口:文件名称过滤器
    23         public String[] list(FilenameFilter filter)
    24         public File[] listFiles(FilenameFilter filter)        
    25  */
    26 public class FileTest1 {
    27 
    28     public static void main(String[] args) {
    29         
    30         //封装h判断目录
    31         File file = new File("H:\");
    32         
    33         //获取该目录下所有文件或者文件夹的File数组
    34         File[] file1 = file.listFiles();
    35         
    36         //遍历该File数组,得到每一个File对象,然后判断
    37         for(File f : file1){
    38             //是否是文件
    39             if(f.isFile()){
    40                 //是否以.jpg结尾
    41                 if(f.getName().endsWith(".jpg")){
    42                     System.out.println(f.getName());
    43                     //艾斯.jpg
    44                 }
    45             }
    46         }
    47     }
    48 }
     1 package zl_file;
     2 
     3 import java.io.File;
     4 import java.io.FilenameFilter;
     5 /*
     6  获取的时候就已经是满足条件的了,然后输出即可。
     7       要想实现这个效果,就必须学习一个接口:文件名称过滤器
     8       1  public String[] list(FilenameFilter filter) 
     9             获取该目录下的所有的文件夹或者文件的名称的集合
    10       2  public File[] listFiles(FilenameFilter filter)     
    11             new FilenameFilter()是个文件名称过滤器接口,需要的是这个接口的实现类的对象,这里使用匿名方法
    12  */
    13 public class FileTest2 {
    14 
    15     public static void main(String[] args) {    
    16         //封装h判断目录
    17         File file = new File("h:\");
    18         
    19         //获取该目录下的所有的文件夹或者文件的名称的集合:public String[] list(FilenameFilter filter)
    20         String[] str = file.list(new FilenameFilter() {
    21             
    22             //new FilenameFilter()是个文件名称过滤器接口,需要的是这个接口的实现类的对象,这里使用匿名方法
    23             public boolean accept(File dir, String name) {
    24             /*
    25                 //根据一个父File对象和一个子文件/目录得到File对象
    26                 File file1 = new File(dir,name);
    27             
    28                 //是否是文件
    29                 boolean flag1 = file1.isFile();
    30                 
    31                 //是否以.jpg结尾
    32                 boolean flag2 = name.endsWith(".jpg");
    33                 return flag2 && flag1;
    34                 */
    35                 //上面的可以总结为下面这段:
    36                 return new File(dir,name).isFile() && name.endsWith(".jpg");
    37             }
    38         });    
    39         //遍历
    40         for(String st : str){
    41         System.out.println(st);
    42         }
    43         //艾斯.jpg
    44     }
    45 }
    何事都只需坚持.. 难? 维熟尔。 LZL的自学历程...只需坚持
  • 相关阅读:
    css 冷知识
    js跨域问题
    检测浏览器是否支持ES6
    新增项目到GIT仓库中
    如何正确设置统计博客园的个人博客访问量(图文详解)
    Node中包的加载机制
    图片路径中含有中文在jsp下不能正常显示的问题
    通过Xshell来访问和连接Linux
    文件下载该注意的问题
    文件上传该注意的问题
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5914606.html
Copyright © 2011-2022 走看看