Java编程获取文件列表及子文件目录的方法(非递归)
废话不谈,直接进入正题,理解见代码注释。
// 非递归
  public List<String> scanFiles(String path) {
    List<String>filePaths = new ArrayList<String>();
    LinkedList<File> list = new LinkedList<File>();
    File dir = new File(path);
    File[] file = dir.listFiles();
    for (int i = 0; i < file.length; i++) {
      if (file[i].isDirectory()) {
        // 把第一层的目录,全部放入链表
        list.add(file[i]);
      }
      filePaths.add(file[i].getAbsolutePath());
    }
    // 循环遍历链表
    while (!list.isEmpty()) {
      // 把链表的第一个记录删除
      File tmp = list.removeFirst();
      // 如果删除的目录是一个路径的话
      if (tmp.isDirectory()) {
        // 列出这个目录下的文件到数组中
        file = tmp.listFiles();
        if (file == null) {// 空目录
          continue;
        }
        // 遍历文件数组
        for (int i = 0; i < file.length; ++i) {
          if (file[i].isDirectory()) {
            // 如果遍历到的是目录,则将继续被加入链表
            list.add(file[i]);
          }
          filePaths.add(file[i].getAbsolutePath());
        }
      }
    }
    return filePaths;
  }
以上就是本文关于Java编程获取文件列表及子文件目录的方法(非递归)的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Java编程子类能否重写父类的静态方法探索、java编程枚举类型那些事!枚举类型定义和重写枚举的方法等,如有不足之处,欢迎留言参考。感谢朋友们对本站的支持!
相关推荐
- 
                             
                            Java实现文件或文件夹的复制到指定目录实例整理文档,搜刮出一个Java实现文件或文件夹的复制到指定目录的代码,稍微整理精简一下做下分享. import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class Test { private static int a = 5; public static void main(String[] args) { //需要复制的目标文件或目标文件夹 String path 
- 
                             
                            java读取resource目录下文件的方法示例本文主要介绍的是java读取resource目录下文件的方法,比如这是你的src目录的结构 ├── main │ ├── java │ │ └── com │ │ └── test │ │ └── core │ │ ├── bean │ │ ├── Test.java │ └── resources │ └── test │ ├── test.txt └── test └── java 我们希望在Test.java中读取test.txt文件中的内容,那么我们可以借助Guava库的Resource 
- 
                             
                            java判断ftp目录是否存在的方法本文为大家分享了java判断ftp目录是否存在的方法,供大家参考,具体内容如下 package com.soft4j.log4j; import java.io.IOException; import sun.net.ftp.FtpClient; public class FtpTest { static String middle_ftpServer = "10.103.2.250"; static String middle_user = "ora9iftp"; 
- 
                             
                            java 对文件夹目录进行深度遍历实例代码java 对文件夹目录进行深度遍历实例代码 1.题目 对指定目录进行所有内容的列出(包含子目录中的内容),也可以理解为对目录进行深度遍历. 2.解题思想 从电脑中获取文件目录,建立函数对其遍历,在这个函数中需要对该目录中的每个文件进行判断,如果文件还是目录,则调用函数本身继续对其进行遍历,如果文件不是目录,则直接输出文件名.为了加强显示的效果,我们还可以建立一个getSpace函数,对其进行缩进. 需要注意的是,不要直接遍历C盘的内容,其目录层次太深,含有太多的系统级文件,容易返回为空,导致空指 
- 
                             
                            Java删除文件、目录及目录下所有文件的方法实例前言 本文主要实现的功能是删除某个目录及目录下的所有子目录和文件,涉及到的知识点:File.delete()用于删除"某个文件或者空目录"!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除. 具体代码示例如下: import java.io.File; public class DeleteDirectory { /** * 删除空目录 * @param dir 将要删除的目录路径 */ private static void doDeleteEmptyDir(String 
- 
                             
                            Java编程获取文件列表及子文件目录的方法(非递归)废话不谈,直接进入正题,理解见代码注释. // 非递归 public List<String> scanFiles(String path) { List<String>filePaths = new ArrayList<String>(); LinkedList<File> list = new LinkedList<File>(); File dir = new File(path); File[] file = dir.listFiles( 
- 
                                                         
                            详解JAVA中获取文件MD5值的四种方法JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过MessageDigest类进行MD5加密,第三步转换成16进制的MD5码值.几种方法的不同点主要在第一步和第三步上.具体可以看下面的例子: 方法一. private final static String[] strHex = { "0", "1", "2" 
- 
                             
                            java显示目录文件列表和删除目录功能以d:\a目录为例,假设D:\a目录内的结构如下: d:\a |--a.sql |--back.log |--b | |--e | | |--1.txt | | |--2.txt | | `--3.txt | `--f | |--4.txt | |--5.txt | `--6.txt |--c | |--e | | |--ace1.txt | | |--ace2.txt | | `--ace3.txt | `--f | |--4.txt | |--5.txt | `--6.txt `--d |- 
- 
                             
                            Java编程获取当前屏幕分辨率的方法示例本文实例讲述了Java编程获取当前屏幕分辨率的方法.分享给大家供大家参考,具体如下: /** * This class implements the functionality of fetching the size of the screen */ package com.leo.util; /** * @author Leo Share * @since 07/16/2007 * @version 1.0 */ class ScreenSize{ private int screenWid 
- 
                             
                            Java编程获取经纬度之间距离的方法本文实例讲述了Java编程获取经纬度之间距离的方法.分享给大家供大家参考,具体如下: public class GeoUtil { /** * 根据经纬度和距离返回一个矩形范围 * * @param lng * 经度 * @param lat * 纬度 * @param distance * 距离(单位为米) * @return [lng1,lat1, lng2,lat2] 矩形的左下角(lng1,lat1)和右上角(lng2,lat2) */ public static double[] ge 
- 
                             
                            Java编程之文件读写实例详解本文实例讲述了Java编程中文件读写的方法.分享给大家供大家参考,具体如下: Java中文件读写操作的作用是什么? 回答这个问题时应该先想到的是Java只是一门语言,我们的一种使用工具而已,这样答案就明晰了,就是将外来的各种数据写入到某一个文件中去,用以保存下来:或者从文件中将其数据读取出来,供我们使用.就如下电影过程,从网络资源中下载一部电影保存于你电脑中(写文件),当你想看的时候就用播放器打开(读文件). Java中如何对文件进行读写操作? 先理一理,Java中的流分两种,字节流和字符流,其 
- 
                             
                            Django 后台获取文件列表 InMemoryUploadedFile的例子在使用Django项目中,From表单提交了图片集合 var formdata = new FormData(); formdata.append("csrfmiddlewaretoken",'{{ csrf_token }}'); if ($('.js_file')[0].files.length > 0){ $.each($('.js_file')[0].files, function (index,file) { formdata.append("file&quo 
- 
                                                         
                            Java实现大文件的分割与合并的方法详解目录 一.题目描述-合并多个文本文件 1.题目 2.解题思路 3.代码详解 二.题目描述-对大文件进行分割处理 1.题目 2.解题思路 3.代码详解 三.题目描述-分割后又再次合并 1.题目 2.解题思路 3.代码详解 4.多学一个知识点 一.题目描述-合并多个文本文件 1.题目 题目:做一个合并多个文本文件的工具. 2.解题思路 创建一个类:TextFileConcatenation 使用TextFileConcatenation继承JFrame构建窗体 读取文本文件时,用的是Buffered 
- 
                             
                            Java编程实现汉字按字母顺序排序的方法示例本文实例讲述了Java编程实现汉字按字母顺序排序的方法.分享给大家供大家参考,具体如下: String[] str0 = new String[]{"abd","ervcd","sdfc","abdc","sded","生活","文教","政治"}; String[] str1 = new String[]{"生活"," 
- 
                                                         
                            Android编程获取控件宽和高的方法总结分析本文总结分析了Android编程获取控件宽和高的方法.分享给大家供大家参考,具体如下: 我们都知道在onCreate()里面获取控件的高度是0,这是为什么呢?我们来看一下示例: 首先我们自己写一个控件,这个控件非常简单: public class MyImageView extends ImageView { public MyImageView(Context context, AttributeSet attrs) { super(context, attrs); } public MyIm 
随机推荐
- CentOS 6.5源码安装Erlang教程
- 禁用Cookie三种方法(保护你的隐私)
- IE或软件加载页中提示脚本错误的解决办法集合
- python与C互相调用的方法详解
- Android之Intent附加数据的两种实现方法
- Android实现调用摄像头
- Javascript中this的用法详解
- Vue上传组件vue Simple Uploader的用法示例
- php中理解print EOT分界符和echo EOT的用法区别小结
- SQL Server根据分区表名查找所在的文件及文件组实现脚本
- jQuery动画效果相关方法实例分析
- jQuery对于显示和隐藏等常用状态的判断方法
- jQuery LigerUI 使用教程入门篇
- Jquery操作cookie记住用户名
- C#执行SQL事务用法实例
- Android-实现切换Fragment页功能的实现代码
- iOS实现手势密码功能
- JS实现网页标题栏显示当前时间和日期的完整代码
- c# DevExpress gridcontrol日期行的显示格式设置
- Android控件RecyclerView实现混排效果仿网易云音乐

