package zl_file;

 import java.io.File;
import java.io.FilenameFilter; /*
  需求: 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称
分析:
两种方式:
10 A:先获取所有的,然后遍历的时候,依次判断,如果满足条件就输出。
a:封装h判断目录
b:获取该目录下所有文件或者文件夹的File数组
c:遍历该File数组,得到每一个File对象,然后判断
d:是否是文件
是:继续判断是否以.jpg结尾
是:就输出该文件名称
否:不搭理它
否:不搭理它 B: 获取的时候就已经是满足条件的了,然后输出即可。
要想实现这个效果,就必须学习一个接口:文件名称过滤器
public String[] list(FilenameFilter filter)
public File[] listFiles(FilenameFilter filter)
*/
public class FileTest1 { public static void main(String[] args) { //封装h判断目录
File file = new File("H:\\"); //获取该目录下所有文件或者文件夹的File数组
File[] file1 = file.listFiles(); //遍历该File数组,得到每一个File对象,然后判断
for(File f : file1){
//是否是文件
if(f.isFile()){
//是否以.jpg结尾
if(f.getName().endsWith(".jpg")){
System.out.println(f.getName());
//艾斯.jpg
}
}
}
}
}
 package zl_file;

 import java.io.File;
import java.io.FilenameFilter;
/*
 获取的时候就已经是满足条件的了,然后输出即可。
要想实现这个效果,就必须学习一个接口:文件名称过滤器
1 public String[] list(FilenameFilter filter)
获取该目录下的所有的文件夹或者文件的名称的集合
2 public File[] listFiles(FilenameFilter filter)
new FilenameFilter()是个文件名称过滤器接口,需要的是这个接口的实现类的对象,这里使用匿名方法
*/
public class FileTest2 { public static void main(String[] args) {
//封装h判断目录
File file = new File("h:\\"); //获取该目录下的所有的文件夹或者文件的名称的集合:public String[] list(FilenameFilter filter)
String[] str = file.list(new FilenameFilter() { //new FilenameFilter()是个文件名称过滤器接口,需要的是这个接口的实现类的对象,这里使用匿名方法
public boolean accept(File dir, String name) {
/*
//根据一个父File对象和一个子文件/目录得到File对象
File file1 = new File(dir,name); //是否是文件
boolean flag1 = file1.isFile(); //是否以.jpg结尾
boolean flag2 = name.endsWith(".jpg");
return flag2 && flag1;
*/
//上面的可以总结为下面这段:
return new File(dir,name).isFile() && name.endsWith(".jpg");
}
});
//遍历
for(String st : str){
System.out.println(st);
}
//艾斯.jpg
}
}

java 19 -14 File类的判断并输出案例的更多相关文章

  1. java 19 -13 FIle类的一些方法2

    package zl_file; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; ...

  2. java 19 -15 File类批量更改文件名的方法

    /* 需求: * 把H:\三国演义下面的视频名称修改为 00?_介绍.avi 思路: A:封装目录 B:获取该目录下所有的文件的File数组 C:遍历该File数组,得到每一个File对象 D:拼接一 ...

  3. Java开发之File类

    File类 File类是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹. File类保存文件或目录的各种元数据信息,包括文件名.文件长度.最后修改时间.是否可读.获取当 ...

  4. java学习一目了然——File类文件处理

    java学习一目了然--File类文件处理 File类(java.io.File) 构造函数: File(String path) File(String parent,String child) F ...

  5. Java基础之File类的使用

    Java基础之File类的使用 1.File类的构造方法和常用方法 2.对File中listFile(FileNameFilter name)学习 3.与File文件类相关的实现 File类的构造方法 ...

  6. Java学习:File类

    Java学习:File类 File类的概述 重点:记住这三个单词 绝对路径和相对路径 File类的构造方法 File类判断功能的方法 File类创建删除功能的方法 File类获取(文件夹)目录和文件夹 ...

  7. java中的File类

    File类 java中的File类其实和文件并没有多大关系,它更像一个对文件路径描述的类.它即可以代表某个路径下的特定文件,也可以用来表示该路径的下的所有文件,所以我们不要被它的表象所迷惑.对文件的真 ...

  8. Java学习笔记——File类之文件管理和读写操作、下载图片

    Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...

  9. Java—IO流 File类的常用API

    File类 1.只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. package cn.test; import java.io.File; import java.io.IOE ...

随机推荐

  1. SharpGL学习笔记(十九) 摄像机漫游

    所谓的摄像机漫游,就是可以在场景中来回走动. 现实中,我们通过眼睛观察东西,身体移动带动眼睛移动观察身边的事物,这也是在漫游. 在OpenGL中我们使用函数LookAt()来操作摄像机在三维场景中进行 ...

  2. python初识(2)

    1.关于编码转换的方式. 比如,讲utf-8的编码转换为unicode方式如下 #-*- coding:utf-8 -*- i="德玛西亚" i_unicode=i_decode( ...

  3. VS2012/2013/2015关闭单击文件进行预览的功能

    Visual Studio在2010版本后推出了点击项目管理器预览文件的功能,但是对于配置不咋地的旧电脑总是觉得有点卡,下面是解决方案. 英文版方法:Tools->Options->Env ...

  4. How to Build Office Developer Tools Projects with TFS Team Build 2012

    Introduction Microsoft Visual Studio 2012 provides a new set of tools for developing apps for Office ...

  5. 详解Paint的各种set方法

    一.前言 我们用set方法来设置画笔的样式,类似于我们挑选画笔画画的过程.由于上面有些方法不支持硬件加速,所以在高版本系统中可能会没有效果.因此,我们首先来看看官方废弃的方法. 下图来自:https: ...

  6. Android自定义控件之轮播图控件

    背景 最近要做一个轮播图的效果,网上看了几篇文章,基本上都能找到实现,效果还挺不错,但是在写的时候感觉每次都要单独去重新在Activity里写一堆代码.于是自己封装了一下.本篇轮播图实现原理原文出处: ...

  7. UINavigationBar 和 UINavigationItem的属性设置

    #import "RootViewController.h" @interface RootViewController () @end @implementation RootV ...

  8. 算法积累:解决如何获取指定文件夹路径或者文件路径下所有子文件后缀为.h .m .c的文本的行数

    1.先解决如何获取一个文件的代码行数 一开始对于这个问题,我的思路就回荡在:1字符串子字符串的判断 2循环直到结束的想法 3将原来是"\n"替换掉之类的想法 一个问题总会有多种解决 ...

  9. SQL 在表中随机取数据

    在一张10万行产品表(Product)中,随机取10条数据的几种方式: SET STATISTICS IO ON SELECT TOP 10 ID FROM dbo.Product(NOLOCK) W ...

  10. mysql ---复制表结构---创建新表

    1.复制表结构及数据到新表CREATE TABLE 新表SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删 ...