第十八章 Java I/O流(2)

1.获取指定目录下的所有文件或文件夹

 1 package cn.itcast_01;
 2 import java.io.File;
 3 import java.io.IOException;
 4 /**
 5  * 需求:获取指定目录下的所有文件和目录(返回的是名称数组或File数组)
 6  */
 7 public class FileDemo5 {
 8     public static void main(String[] args) {
 9         //创建file对象并指定抽象路径名
10         File file = new File("E:");
11         //list()返回的是名称数组
12         String[] s = file.list();
13         for (String string : s) {
14             System.out.println(string);
15         }
16         System.out.println("--------");
17         File[] listFile = file.listFiles();
18         for (File f : listFile) {
19             System.out.println(f.getName());
20             System.out.println(f.getPath());
21         }
22     }
23 }

2.获取指定目录下的指定文件

 1 package cn.itcast_01;
 2 import java.io.File;
 3 import java.io.IOException;
 4 /**
 5  * 需求:获取指定目录下所有以.jpg结尾的文件
 6  */
 7 public class FileDemo6 {
 8     public static void main(String[] args) throws IOException {
 9         //创建file对象指定抽象路径名
10         File file = new File("E:");
11         //获取指定目录下所有内容(File数组)
12         File[] files = file.listFiles();
13         //遍历数组并判断是否满足条件
14         for (File f : files) {
15             if(f.isFile()){
16                 if(f.getName().endsWith(".jpg")){
17                     System.out.println(f.getName());
18                 }
19             }
20         }
21     }
22 }
 1 package cn.itcast_01;
 2 import java.io.File;
 3 import java.io.FilenameFilter;
 4 import java.io.IOException;
 5 /**
 6  * 文件名称过滤器
 7  * 直接返回满足条件的文件
 8  */
 9 public class FileDemo7 {
10     public static void main(String[] args) throws IOException {
11         //定义file对象指定路径
12         File file = new File("E:");
13         //查询所有满足条件的文件
14         String[] s = file.list(new FilenameFilter() {
15
16             public boolean accept(File dir, String name) {
17                 /*File file = new File(dir,name);
18                 boolean flag1 = file.isFile();
19                 boolean flag2 = name.endsWith(".jpg");
20                 return flag1&&flag2;*/
21                 return new File(dir, name).isFile() && name.endsWith(".jpg");
22             }
23         });
24         for (String string : s) {
25             System.out.println(string);
26         }
27     }
28 }
时间: 2024-10-14 07:26:25

第十八章 Java I/O流(2)的相关文章

第十八章 Java I/O流(3)

1.输入输出流(单字节读取) package cn.itcast_02; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /** 需求:复制文本内容到另一处(单字节复制) */ public class CopyFileDemo { public static void main(String[] args) throws IOException { //获取

Thinking in Java--第十八章-Java I/O系统

Java I/O的类有很多.我们要去学习I/O类库演化的过程.因为,如果缺少历史的眼光,我们很快就会对什么时候该使用哪些类,以及什么时候不该使用它们而感到困惑. 18.1 File类 这个称作FilePath类更好一些 package com.sdkd.JavaIO; import java.io.File; import java.io.FilenameFilter; import java.util.Arrays; import java.util.regex.Pattern; public

JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习

JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了.如果你初学,不懂IO流,你可以从前往后慢慢看,但是你工作了一段时间你会发现,流的使用场景以及技术点是非常的强硬的,我们势必要掌握这个知识点,如果你觉得翻阅API比较鼓噪,看视频得不到精髓,看书看不到要点,你就跟随我的JAVA之旅,一起去探索吧! 一.I/O概述 I/O全名:Input Output

第十八章 文本处理流编辑器:sed命令

第十八章 文本处理流编辑器:sed命令 名词解释 sed 是一种流编辑器,它是文本处理常用到的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有改变,除非你使用重定向存储输出.sed主要用来自动编辑一个或多个文件,简化多文件的反复操作,编写转换程序等. sed的选项.命令

“全栈2019”Java第二十八章:数组详解(上篇)

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第二十八章:数组详解(上篇) 下一章 "全栈2019"Java第二十九章:数组详解(中篇) 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学习小组"

“全栈2019”Java第四十八章:重写方法Override

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第四十八章:重写方法Override 下一章 "全栈2019"Java第四十九章:重载与重写对比详解 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学习小组

“全栈2019”Java第八十八章:接口中嵌套接口的应用场景

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第八十八章:接口中嵌套接口的应用场景 下一章 "全栈2019"Java第八十九章:接口中能定义内部类吗? 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学习

“全栈2019”Java第九十八章:局部内部类访问作用域成员详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第九十八章:局部内部类访问作用域成员详解 下一章 "全栈2019"Java第九十九章:局部内部类与继承详解 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Java学

“全栈2019”Java异常第十八章:Exception详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异常第十八章:Exception详解 下一章 "全栈2019"Java异常第十九章:RuntimeException详解 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复&quo