下面是完整代码,楼主可以参考一下
功能:建立指定文件的清单文件。 将指定目录下的指定文件(包含子目录)的绝对路径写入到一个文件中。 该文件就作为指定文件的清单文件。
代码1:
- package mytest;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileFilter;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.List;
- public class TestTest {
-
-
- public static void main(String[] args) throws IOException {
- File file = new File ("e:\\");
- File files = new File("e:\\path.txt");
- List <File> list = new ArrayList<File>();
- FileFilterByName filter =new FileFilterByName("txt");
-
- getFileToList(file, list ,filter);
-
- getPath(list,files);
-
- for (File file2 : list) {
- System.out.println(file2);
-
- }
- }
- private static void getPath(List<File> list, File files) throws IOException {
- BufferedWriter bw = new BufferedWriter(new FileWriter(files));
- for (File file : list) {
- bw.write(file.getAbsolutePath());
- bw.newLine();
- bw.flush();
- }
- bw.close();
- }
- private static void getFileToList(File file, List<File> list,
- FileFilterByName filter) {
- File [] f = file.listFiles();
- for (File ff : f) {
- if (ff.isDirectory()) {
- getFileToList(ff, list, filter);
- }
- else{
- if (filter.accept(ff)) {
- list.add(ff);
- }
-
- }
-
- }
- }
- }
复制代码
代码2:
- package mytest;
- import java.io.File;
- import java.io.FileFilter;
- public class FileFilterByName implements FileFilter {
- private String suffix;
- public FileFilterByName(String suffix) {
- super();
- this.suffix = suffix;
- }
- @Override
- public boolean accept(File pathname) {
- // TODO Auto-generated method stub
- return pathname.getName().endsWith(suffix);
- }
- }
复制代码
|