`
schy_hqh
  • 浏览: 558343 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

(IO)列出目录下所有的java文件

 
阅读更多

要点:

1. listFiles()  列出指定目录下的文件夹和文件

2. 如果是目录,则递归

3.FilenameFilter提供文件过滤功能,符合条件的文件加入到容器中

4.BufferWriter提供缓冲写功能

5.操作流,记得释放资源

 

package com.gc.file;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class ListFile {
	public static void main(String[] args) throws IOException {
		//筛选出指定目录下的java文件
		File dir = new File("d:/java/test");
		FilenameFilter filter = new FilenameFilter() {
			@Override
			public boolean accept(File dir, String name) {
				return name.endsWith(".java");
			}
		};
		List<File> fileList = new ArrayList<File>();
		listJavaFile(dir,filter,fileList);
		
		//将所有java文件路径写到文件中
		File destFile = new File("d:\\resut.txt");
		writeToFile(fileList, destFile);
	}


	private static List<File> listJavaFile(File dir, FilenameFilter filter, List<File> fileList) {
		File[] files = dir.listFiles();
		for(File file : files) {
			if(file.isDirectory()) {
				listJavaFile(file, filter, fileList);
			} else {
				if(filter.accept(dir, file.getName()))
					fileList.add(file);
			}
		}
		return fileList;
	}
	
	
	private static void writeToFile(List<File> fileList, File destFile) throws IOException {
		BufferedWriter bufw = null;
		try{
			bufw = new BufferedWriter(new FileWriter(destFile));
			for(File file : fileList) {
				bufw.write(file.getAbsolutePath());
				bufw.newLine();
				bufw.flush();
			}
		} finally {
			if(bufw!=null)
				bufw.close();
		}
	}
}

 

 

 

 

 

分享到:
评论

相关推荐

    列出目录中所有文件(含文件夹)

    3. **列出目录内容**:在命令行环境中,如Windows的CMD或Linux的Terminal,可以使用`dir`(Windows)或`ls`(Unix/Linux)命令来列出当前目录下的文件和子目录。加上 `-R` 或 `--recursive` 参数,可以递归列出所有...

    JAVA实现 根据所写文件的目录列出目录下的文件

    知道目录后,可以列出该目录下所属的文件 import java.awt.*; import java.awt.event.*; import java.io.*; import javax.swing.*; //列出目录下的文件 public class ListFileDemo extends JFrame{ JTextField ...

    java中遍历某个目录下的所有文件及文件夹中的文件

    在Java开发中,经常会遇到需要遍历指定目录及其子目录下所有文件的情况。本文将详细介绍如何使用Java标准库中的`java.io.File`类来实现这一功能。我们将通过一个简单的递归函数来演示如何遍历目录、列出所有文件的...

    java io 文件操作大全

    在这个示例中,首先确保了指定的路径是一个有效的目录,然后使用`listFiles()`方法获取该目录下所有文件的列表,并将其打印出来。 #### 五、判断是否为空白文件 判断一个文件是否为空(即大小为0字节)也很简单,...

    java IO详解课件

    - **示例程序**:假设有一个需求是列出某个目录下所有的`.txt`文件,可以通过实现`FilenameFilter`接口来完成这一任务。例如: ```java import java.io.File; import java.io.FilenameFilter; public class ...

    java简单列出文件夹下所有文件的方法

    在Java编程语言中,列出文件夹下所有文件和子文件夹是一项常见的任务,尤其是在处理文件系统操作时。这里我们将深入探讨如何使用Java实现这个功能,以及涉及到的相关技巧。 首先,我们要导入必要的Java.IO包,包括`...

    java io读写文件

    根据给定的信息,我们可以深入探讨Java IO操作中的文件读写技术,特别关注如何从一个文本文件中筛选数据并保存到另一个文件中。 ### Java IO读写文件基础 在Java中,进行文件读写的操作通常涉及两个核心包:`java....

    java文件io与正则表达式.pdf

    例如,下面的示例代码展示了如何列出当前目录下所有的 `.java` 文件: ```java import java.io.File; public class DirList { public static void main(String[] args) { File path = new File("."); String[] ...

    完整版枚举指定目录的所有子目录和文件例程.rar

    这个Java程序会列出目录下的所有文件和子目录。 5. **.NET Framework实现**: 在.NET环境中,可以使用`System.IO`命名空间的`DirectoryInfo`和`FileSystemInfo`类来枚举目录。以下是一个C#示例: ```csharp ...

    java的io操作

    最后,案例5演示了如何列出指定目录下的所有文件(包括隐藏文件)。通过调用`File`对象的`list()`方法,可以获取到一个字符串数组,其中包含了目录中的所有文件和子目录的名称。然后遍历这个数组并打印出来。 总的...

    Java文件目录操作(模拟DOS)

    1. **查看目录(dir)**: `dir`命令在DOS系统中用于列出当前目录下的所有文件和子目录。在Java中,我们可以使用`java.io.File`类的`list()`或`listFiles()`方法来获取当前目录的内容。`list()`返回文件名的字符串数组...

    java的io流文件读写

    9. 遍历目录:除了单个文件的读写,Java还提供了File类来处理目录操作,如列出目录下的文件和子目录。 总之,Java的IO流提供了一套丰富的接口和类,用于处理各种输入输出任务,包括文件的读写。理解并熟练运用这些...

    java中的IO整理完整版

    案例5显示了如何列出指定目录下的所有文件(包括隐藏文件)。`list()`方法返回一个字符串数组,包含了目录中的所有文件和子目录的名称。如果目录为空,或者访问权限不足,`list()`可能会返回`null`。 Java的IO流是...

    java中的io详解.

    在 Java 中,目录也被当作 File 使用,只是多了一些目录特有的功能——可以用 list 方法列出目录中的文件名。 File 类提供了许多有用的方法,例如: * `exists()`: 判断文件是否存在 * `delete()`: 删除文件 * `...

    java_io_文件操作_复制_删除_移动_下载

    // 列出所有文件并保存到File数组 File[] files = folder.listFiles(); for (File file : files) { String fileName = file.getName(); if (fileName.endsWith(".txt")) { file.delete(); } else { System....

    列出所有文件及文件夹

    在Windows中,我们可以使用命令行工具“dir”(directory)配合“/s”参数来递归列出指定路径下的所有文件和子文件夹。例如:“dir /s C:\path\to\directory”。结果将以平面列表的形式展示。如果希望以树形结构...

    Java 实例 - 输出指定目录下的所有文件源代码-详细教程.zip

    在上述代码中,我们添加了一个名为`listAllFiles`的方法,它接受一个`File`对象作为参数,然后递归地列出该目录及其所有子目录下的文件。通过调用`getAbsolutePath()`,我们可以获取文件或目录的完整路径,而不仅仅...

    Java打开文件目录

    // 列出目录中的所有文件和子目录 String[] files = directory.list(); for (String fileName : files) { System.out.println("文件名:" + fileName); } } else { System.out.println("指定的路径不是一个...

    Java获取文件或文件夹信息

    例如,如果你需要列出指定目录下的所有文件和子目录,可以使用`list()`或`listFiles()`方法: ```java File directory = new File("/path/to/directory"); String[] files = directory.list(); // 列出文件名 File...

Global site tag (gtag.js) - Google Analytics