File遍历查找

获取当前目录下的文件和子文件夹

System.out.println("-------------list()方法--------------");
    File dir2=new File("d:\\");
    String[] list = dir2.list();
    for (String string : list) {
        System.out.println(string);
    }

获取当前目录下的pdf文件

String[] list=dir.list(new FilenameFilter() {
    @Override
    public boolean accept(File dir, String name) {
        if(name.endsWith(".pdf")){
            return true;
        }
        return false;
    }
});
    for (String string : list) {
        System.out.println(string);
    }    

递归遍历文件夹

public static void listFiles(File dir){
    System.out.println(dir.getAbsolutePath());
    File[] listFiles = dir.listFiles();
    if(listFiles!=null){
        for (File file : listFiles) {
            if(file.isDirectory()){//如果是文件夹自己调用自己
            listFiles(file);
            }else{
                System.out.println(file.getAbsolutePath());
            }
        }
    }
}    

递归删除文件夹

public static void deleteDir(File dir){
    File[] files=dir.listFiles();
    if(files!=null){
        for (File file : files) {
            if(file.isDirectory()){
                deleteDir(file);
            }else{
                System.out.println("删除文件:"+
file.getAbsolutePath());
                file.delete();
            }
        }

    }
    //删除空文件夹
    System.out.println("删除文件夹:"+dir.getAbsolutePath());
    dir.delete();
}

以后能修改吗?

原文地址:https://www.cnblogs.com/strive10/p/8870066.html

时间: 2024-10-07 02:20:41

File遍历查找的相关文章

遍历查找问题的应用场景

查找问题是指在一个样本范围内,是否存在需要的数据. 在学习开发的过程中,我们经常遇到该类型的问题,学习遍历-查找问题,将有助于我们快速分析问题,给出解题思维流程图. 1.查找判断问题 单纯的查找问题,是用来判断给出的数据类型里面是否存在有我们想查找的数据,而不关心这些数据是什么.在解决该类问题的时候,往往用到以下方案: 第一步:定义一个bool变量isFind,表示是否找到,由于一开始还没有开始查找,自然没有找到,所以变量isFind的值应该为false. bool isFind=false;

爪哇国新游记之二十五----图及其遍历查找

代码: import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; // 顶点类 class Vertex{ String name;// 名称 boolean visited;// 是否已访问

DOM遍历查找结点

一.遍历API(2个) 1.深度优先原则遍历NodeIterator 节点迭代器 创建遍历API对象: var iterator=document.createNodeIterator(开始的父节点对象,whatToShow,null,false); whatToShow: NodeFilter.SHOW_ELEMENT(遍历元素节点) NodeFilter.SHOW_ALL(遍历所有) 用while循环,反复调用iterator.nextNode()方法 只要nextNode(),就向下一个移

File遍历以及FilenameFilter的使用

首先遍历来一下,这里分为递归与不递归的两种操作: 非递归操作 //非递归复用了 LinkedList private static void NotRecursive() { LinkedList<File> list=new LinkedList<>(); int folderNum=0; int fileNum=0; File file=new File("E:/动脑"); if(file.exists()){ File[] fs=file.listFile

2015 ACM/ICPC Asia Regional Changchun Online HDU 5444 Elven Postman【二叉排序树的建树和遍历查找】

Elven Postman Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 591    Accepted Submission(s): 329 Problem Description Elves are very peculiar creatures. As we all know, they can live for a very

二叉树的前序遍历建立与二叉树的前序遍历查找

#include<iostream> #include<vector> using namespace std; //二叉树的定义 struct TreeNode { char val; TreeNode *left; TreeNode *right; TreeNode(int x='#') : val(x), left(NULL), right(NULL) {} }; //建立二叉树 //AB#D##C##前序遍历 void erchashu_jianli(TreeNode**

Openlayers 遍历查找交互事件(ol.interaction)

说明 有时候需要遍历openlayers的交互事件,并根据不同类型进行操作/监控. 解决方案 方法一:实现了找到交互事件中的Select事件,并删除 map.getInteractions().forEach(function (interaction) { if (interaction instanceof ol.interaction.Select) { map.removeInteraction(interaction); } }); 方法二:其实还有另一种写法,getArray()获取

两个集合遍历查找不重复

int[] tab1 = new int[]{2009,2010,2013};int[] tab2 = new int[]{2009,2010,2009,2010,2014}; //这里首先遍历表2for(int i=0; i<tab2.length; ++i) {//取出表2中的数据int elem2 = tab2[i]; boolean find = false; //这里遍历表1for(int j=0;j<tab1.length; ++j) { //取出表1中的数据int elem1 =

遍历查找跳格子逻辑

package solution; import java.util.Scanner; import java.util.Stack; public class Jump { static boolean found=false; static int count=0; public static void main(String[] args) { Scanner sc=new Scanner(System.in); int N=sc.nextInt(); for(int cases=1;ca