`
寻梦者
  • 浏览: 637306 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

File的指定文件后缀的查找以及文件夹目录的创建

 
阅读更多

1.关于文件夹目录的创建,直接上代码,亮点是方法的嵌套调用

 

public class Main {

	private static String strFilePath = "E:\\kankan";

	public static void main(String[] args) {
		File file = new File(strFilePath, "aa");
		if(!file.exists()){
			try {
				createDirs(file);
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}
	
	private static void createDirs(File file) {
		if(file == null || file.exists()) {
			return;
		}
		createDirs(file.getParentFile());
		file.mkdir();
	}

}
 

 

 

2.关于指定目录文件的查找,直接上代码了,这个是偶自己写的,亮点是用了FilenameFilter

 

 

package com.ant.test;

import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;

/**
 * @author: antty
 * @time:2011-10-31
 */
public class Main {

	private static String strFilePath = "E:\\myDropbox\\Dropbox\\Public\\books";

	private static String[] bookType = new String[] { "txt", "pdf", "epub" };

	public static void main(String[] args) {
		getFiles(strFilePath);
		for (File file : getFiles(strFilePath)) {
			System.out.println(file.getName());
		}
	}

	private static List<File> getFiles(String fileDir) {
		List<File> result = new ArrayList<File>();
		filtFiles(fileDir, result);
		return result;
	}

	private static void filtFiles(String fileDir, List<File> result) {
		File file = new File(fileDir);
		File[] files = file.listFiles(new FileFilter());
		if (files != null && files.length > 0) {
			for (File f : files) {
				if (f.isFile()) {
					result.add(f);
				} else {
					filtFiles(f.getAbsolutePath(), result);
				}
			}
		}
	}

	private static class FileFilter implements FilenameFilter {

		public boolean accept(File file, String path) {
			File f = new File(file, path);

			if (f.isDirectory() && !strFilePath.equals(f.getAbsoluteFile())) {
				return true;
			}

			String ext = getExtension(path);
			if (isBookType(ext)) {
				return true;
			}
			return false;
		}

		private boolean isBookType(String _type) {
			for (String type : bookType) {
				if (type.equals(_type)) {
					return true;
				}
			}
			return false;
		}

		private String getExtension(String fileName) {
			if ((fileName != null) && (fileName.length() > 0)) {
				int index = fileName.lastIndexOf('.');

				if ((index > 0)) {
					return fileName.substring(index + 1).toLowerCase();
				}
			}
			return null;
		}
	}

}                                                                                                                                                                
分享到:
评论

相关推荐

    查找文件夹下指定文件(C++)

    地三个参数为可选的输入参数,输入扩展名信息,扩展名格式为(.cpp, *.cpp, cpp)三者都可,大小写不区分,如果为空则输出目录下的所以文件,默认是输出所有文件 第四个参数为可选的输入参数,表明是否递归,如果为...

    全盘查找文件,可查指定文件后缀名和指定文件

    本文将深入探讨“全盘查找文件”这一主题,包括如何通过指定文件后缀名进行查找,以及涉及的技术如递归调用和VB编程。 首先,标题中的“全盘查找文件,可查指定文件后缀名”,指的是能够搜索计算机的所有磁盘驱动器...

    目录文件夹中查找所有指定的后缀名

    总的来说,"目录文件夹中查找所有指定的后缀名"是一项基础但实用的技能,涉及到的操作包括文件系统的遍历、文件扩展名的匹配以及数据的输出和导入。理解并掌握这些知识点,对于提升文件管理和自动化处理的能力...

    Java使用FilenameFilter查找出目录下指定后缀的文件示例

    "Java使用FilenameFilter查找出目录下指定后缀的文件示例" Java语言中,FilenameFilter是一个非常有用的类,主要用于文件遍历和查找操作。今天,我们将通过一个实例,介绍如何使用FilenameFilter查找出目录下指定...

    PHP实现遍历某一目录下的所有文件并将特定后缀文件复制到特定目录

    以上代码示例将遍历指定目录,查找所有.txt文件,并将它们复制到目标目录。你可以根据需求修改文件后缀和目录路径。 注意,如果你的目录包含子目录,并且你想递归地处理它们,你还需要添加额外的逻辑来检查每个条目...

    C#遍历文件夹获取指定后缀名文件

    C#中遍历文件夹以及获取指定后缀名文件是文件操作中常见的需求。本文提供了具体实现方法,涉及到.NET框架中的System.IO命名空间。在开发过程中,为了管理文件或执行批量处理任务,经常需要对文件夹进行遍历,检索...

    MFC获取电脑文件夹下文件的名称,类型,大小,后缀

    本文将详细讲解如何使用MFC来获取电脑文件夹下的文件信息,包括文件名、类型、大小以及后缀。 首先,我们需要了解MFC中的CFileFind类,它是用来遍历文件系统并查找指定模式的文件的关键工具。我们可以通过创建...

    C#根据条件查找硬盘指定文件

    对于实现“根据条件查找硬盘指定文件”的功能,我们首先要理解基本的文件操作概念。`Directory.GetFiles()`方法可以用来获取指定目录下的所有文件,而通过传入通配符(如`*.*`)或自定义过滤器(如`*.jpg`),我们...

    vb文件夹下遍历指定后缀文件_VB_

    在VB(Visual Basic)编程中,遍历文件夹并查找具有特定后缀名的...以上就是关于使用VB遍历文件夹并查找指定后缀文件的基本知识,希望对你理解这个主题有所帮助。在实际开发中,可以根据具体需求进行适当的修改和扩展。

    C# 遍历指定目录下的所有文件和目录

    在C#编程中,遍历指定目录下的所有文件和子目录是一项常见的任务,这通常用于文件管理和系统操作。本文将详细讲解如何使用C#来实现这一功能,以及相关的知识点。 首先,我们需要引入`System.IO`命名空间,这个命名...

    C#文件查找(按内容、文件名称查找)源码

    - 使用`System.IO`命名空间:C#中的文件操作主要通过`System.IO`命名空间进行,包含了`File`、`FileInfo`、`Directory`和`DirectoryInfo`等类,用于文件和目录的创建、读写及查找。 - `FileStream`与`StreamReader...

    VC++根据文件后缀名获文件打开方式

    1. **FindExecutable()**:这是一个Windows API函数,用于查找与指定文件扩展名关联的可执行文件。它返回一个字符串,这个字符串通常是与该扩展名关联的程序的完整路径。 2. **SHGetKnownFolderPath()**:此函数...

    获取某文件夹下所有文件名、文件夹名、后缀名

    在IT领域,获取一个文件夹下所有文件名、文件夹名以及后缀名是一项常见的任务,这在数据处理、文件管理、自动化脚本编写等方面都非常重要。本文将详细讲解如何实现这一功能,并提供一个名为"getfilename.exe"的实用...

    Android 遍历文件夹,搜索指定扩展名的文件

    例如,在代码片段中出现的`new File(Path).listFiles()`就是用来获取指定路径下的所有文件和子目录的列表。返回的是一个`File`对象数组,每个元素代表一个文件或者目录。 #### 知识点三:搜索指定扩展名的文件 在...

    利用递归实现指定目录下的EXE文件查找

    在编程领域,尤其是在Windows系统...总的来说,利用VC++和MFC递归查找指定目录下的EXE文件,需要理解递归算法、Windows API以及MFC的应用,通过编写适当的函数和类,结合文件系统操作,可以实现高效的文件查找功能。

    遍历文件夹获取后缀名

    这部分涉及到了递归遍历文件夹的逻辑,使用了 `CFileFind` 类来查找文件和目录。 ```cpp int _Finder(LPCTSTR pstr) { CFileFind finder; CString strWildcard(pstr); strWildcard += _T("\\*.*"); BOOL ...

    搜索指定文件夹符合条件的文件

    在IT行业中,搜索指定文件夹并根据特定条件筛选文件是一项常见的任务,特别是在软件开发和数据管理中。在C++编程语言中,我们可以利用标准库中的`&lt;filesystem&gt;`库(自C++17版本开始引入)或者旧版的`&lt;dirent.h&gt;`库来...

    (VS2015 C++)获取电脑文件夹下文件的名称,类型,大小,后缀信息

    在MFC中,`CFile`类可以用来访问单个文件的信息,但对于目录遍历,我们通常会使用`FindFirstFile`,`FindNextFile`以及`FindClose`这三个Windows API函数来获取文件列表。 1. **获取文件名称**: 文件名可以通过`...

    遍历某文件夹下的 .txt 文件

    根据提供的文件标题、描述、标签以及部分内容,我们可以总结出与“遍历某文件夹下的 .txt 文件”相关的知识点。以下是对这些知识点的详细说明: ### 1. 遍历文件夹的基本概念 #### 1.1 定义 遍历文件夹是指按照...

    c语言递归遍历指定文件夹下所有文件算法

    ### C语言递归遍历指定文件夹下所有文件算法 #### 概述 在C语言中,递归遍历文件夹是一种常见的需求,主要用于搜索、处理文件系统中的文件或目录等场景。递归遍历意味着程序会从一个指定的根目录开始,逐层深入每...

Global site tag (gtag.js) - Google Analytics