java ,如何获取指定目录下的所有文件呢?
看代码:
/*** * 获取指定目录下的所有的文件(不包括文件夹),采用了递归 * * @param obj * @return */ public static ArrayList<File> getListFiles(Object obj) { File directory = null; if (obj instanceof File) { directory = (File) obj; } else { directory = new File(obj.toString()); } ArrayList<File> files = new ArrayList<File>(); if (directory.isFile()) { files.add(directory); return files; } else if (directory.isDirectory()) { File[] fileArr = directory.listFiles(); for (int i = 0; i < fileArr.length; i++) { File fileOne = fileArr[i]; files.addAll(getListFiles(fileOne)); } } return files; }
说明:上述方法采用了递归,所以包含子目录下的子目录中的文件。。。
测试代码:
@Test public void test_getListFiles(){ ArrayList<File> files=FileUtils.getListFiles("d:\\Temp\\a\\a"); SystemUtil.printFilesFilePath(files); }
输出结果:
d:\Temp\a\a\divided\merged\oracle学习笔记.doc
d:\Temp\a\a\divided\oracle学习笔记.doc_1_3kldv
d:\Temp\a\a\divided\oracle学习笔记.doc_2_3kldv
d:\Temp\a\a\divided\oracle学习笔记.doc_3_3kldv
d:\Temp\a\a\oracle学习笔记.doc
过滤前缀(只是获取指定目录下的文件,没有递归):
/*** * * @param path * @param prefixStr * :前缀名 * @return */ public static File[] getFilesByPathPrefix(File path, final String prefixStr) { File[] fileArr = path.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // System.out.println("prefixStr:"+prefixStr); if ((ValueWidget.isNullOrEmpty(prefixStr) || (dir.isDirectory() && name .startsWith(prefixStr)))) { return true; } else { return false; } } }); return fileArr; } /*** * 前缀名 * * @param pathStr * @param prefixStr * @return */ public static File[] getFilesByPathAndPrefix(String pathStr, final String prefixStr) { File path = new File(pathStr); return getFilesByPathPrefix(path, prefixStr); }
过滤后缀名(只是获取指定目录下的文件,没有递归):
/*** * * @param path * @param prefixStr * :后缀名 * @return */ public static File[] getFilesByPathAndSuffix(File path, final String sufixStr) { File[] fileArr = path.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // System.out.println("prefixStr:"+prefixStr); if ((ValueWidget.isNullOrEmpty(sufixStr) || (dir.isDirectory() && name .endsWith(sufixStr)))) { return true; } else { return false; } } }); return fileArr; } /*** * 后缀名 * * @param pathStr * @param sufixStr * @return */ public static File[] getFilesByPathAndSuffix(String pathStr, final String sufixStr) { File path = new File(pathStr); return getFilesByPathAndSuffix(path, sufixStr); }
相关推荐
在Java编程语言中,读取目录下指定的文件是一项常见的任务,这主要涉及到文件I/O操作。Java提供了丰富的API来处理文件系统相关的操作,包括读取、创建、删除文件以及遍历目录等。这里我们将详细讲解如何在Java中实现...
### JAVA获取FTP文件列表知识点详解 #### 一、概述 在现代软件开发中,FTP(File Transfer Protocol)是一种广泛使用的协议,用于在网络上进行文件传输。本文档将详细介绍一个基于Java的实用工具类`FtpClientUtil`...
java实现 获取指定路径下 指定格式 的所有文件
在编程领域,尤其是在文件系统操作相关的任务中,获取指定目录下的所有文件名和路径是一项基本且重要的工作。这个过程通常涉及到文件系统遍历,能够帮助开发者处理文件、组织数据或者进行备份等操作。本篇文章将深入...
在Java编程语言中,删除指定目录下的文件是一个常见的任务,特别是在处理文件系统操作时。本文将深入探讨如何使用Java API来实现这一功能,主要关注`java.io`和`java.nio.file`这两个包中的相关类和方法。 首先,...
在Java编程中,获取某个路径下所有文件列表并将其写入指定文件是一项常见的任务,尤其在文件管理和系统操作中非常实用。以下是如何实现这个功能的详细步骤和相关知识点。 首先,我们需要导入Java.io和java.nio.file...
在Java编程中,读取项目中的文件,特别是位于`src`目录下的文件,是一个常见的需求。这涉及到对项目结构的理解和使用Java I/O流的知识。`src`目录通常包含源代码文件,而运行时,这些文件会被编译并放置到类路径...
在Java编程语言中,遍历一个目录下的所有文件和子目录是一项常见的任务,尤其是在处理文件系统操作时。这里我们将深入探讨如何使用Java API来实现这一功能,并解释相关的知识点。 首先,Java提供了`java.io.File`类...
可以统计指定目录下指定文件类型的文件数量及行数 此文件是用jdk1.5编译的.如果说您的jvm不相符.请联系qq:361606472
java读取某个文件夹下的所有文件 很不错可以看看 不要分
java 提取目录下所有子目录的文件到指定位置 最近做视频,各个目录里都有图片,无法统一导入到视频编辑软件 写了个小程序,可以将指定各级目录下的文件拷贝到指定目录,并以文件夹名字加数字命名 如果文件夹上都...
下面是一个简单的例子,展示如何删除指定文件夹下的所有文件,但保留空文件夹: ```java public class FileDeleter extends SimpleFileVisitor<Path> { @Override public FileVisitResult visitFile(Path file, ...
本示例简单的实现了一个用Java代码来访问FTP,根据指定FTP的目录,访问这个路径下面的Ftp的文件,取出这个目录下面所有文件的文件名保存到一个Map中,最后根据系统时间和文件生成时间做对比,得出该日是否正确生成...
- 在获取到共享目录的访问权限后,我们可以使用Java的I/O流来读取和下载文件。这通常涉及`FileInputStream`(用于读取远程文件)和`FileOutputStream`(用于写入本地文件)。`SmbUtils.java`中的某个方法可能负责从...
在Java开发中,经常会遇到需要遍历指定目录及其子目录下所有文件的情况。本文将详细介绍如何使用Java标准库中的`java.io.File`类来实现这一功能。我们将通过一个简单的递归函数来演示如何遍历目录、列出所有文件的...
该方法用于获取指定路径下的资源,并返回表示该资源的`URL`对象。 - **参数**:`String path` - 指定资源的路径。 - **返回值**:`URL`对象,如果找不到资源则返回`null`。 - **特点**: - 如果`path`以 `/` 开头...
`listFiles()`方法用于获取指定目录下的所有文件或目录名,返回的是一个`File[]`数组。如果目录为空,它会返回`null`。 ```java File sourceDir = new File("源目录路径"); File[] files = sourceDir.listFiles(); ...
获取指定目录下所有文件的绝对路径和文件名
例如,如果你需要列出指定目录下的所有文件和子目录,可以使用`list()`或`listFiles()`方法: ```java File directory = new File("/path/to/directory"); String[] files = directory.list(); // 列出文件名 File...