java代码实现目录结构
2017-07-20 17:08
225 查看
今天用java代码来实现。像我们电脑盘符那样的目录结构。在代码开始之前首先。介绍一下。用。java代码实现目录的思想。
第一步:完成基础的。大家想。我们是如何获取文件的。是不是用File类,直接就获取了。,获取完以后我们就要猜想一下。下一个是文件内容还是目录。
第二步:遍历文件。找出谁是目录谁是文件内容。此处的思维利用的是递归思想。(不过很消耗内容喲)。
第三步:完成以上两步。我们打印出来就可以看到我们的文件了,但是,这个时候的文件,没有层次感。没有像我们电脑那样的层次。并且。这个时候,你也不知道,谁是子文件,谁是并列文件。咋办额呢。
第四步:完成层次感。利用的原理就是。添加空格字符串。其实就是,每遍历一次,我就把这个地方记录下来,标记起来。然后添加空格字符串。。这样子就完成层次感了。
直接代码走起。
package com.huojg.test.Test; import java.io.File; /* * 用java代码实现树状目录结构 * * **/ public class Tree { private static int count=0; public static void main(String[] args) { //1.获取目录 File file=new File("D:/登陆页面"); //8.把文件爱你作为参数进行遍历 market(file); } //2.判断是目录还是文件内容。 public static void market(File file){ //7.否则把文件的你名字打印出来 System.out.println(makeSpace(count)+"~*"+file.getName());//输出位置也很重要,必须在头部 //3.获取这个路径的下所有的文件以及目录 File[] fil=file.listFiles(); //4.判断里面是目录。使用递归继续遍历 if(fil!=null&&fil.length>0){ count++;//如果是目录加1 //5,说明是目录利用递归继续遍历 for(File fi:fil){ market(fi); } count--;//上面遍历加1以后还得退回来。继续遍历 } } //6.让目录有层次感,必须有一个标记。 public static String makeSpace(int count){ //创建空格字符串 String spack=""; for(int i=0;i<count;i++){ spack+=" "; } return spack; } }
结果;
~*登陆页面 ~*201404170927.rar ~*css ~*main.css ~*images ~*air-balloon-1.png ~*air-balloon-2.png ~*login-bg.jpg ~*login-foot.jpg ~*login.png ~*logo-login.png ~*index.html ~*js ~*DD_belatedPNG.js ~*fun.base.js ~*jQuery.js ~*script.js
哈哈哈、这就完成了,我们用java代码来 遍历目录的效果。
不过里面需要注意的地方很多。尤其是count++与count- -这个地方的精华。理解起来也很简单。count++就是,我们已经知道这一层是目录需要,继续遍历。这个时候。遍历完成以后我们就需要回到上一层。如果有就继续,没有就下一个。count - -的用途就在这里。目的就是。遍历完成以后返回上一层。继续遍历。牛逼吧。。、
相关文章推荐
- java代码实现根据JSON文件进行批量文件重命名或者改目录结构
- 数据结构之链表、栈和队列 java代码实现
- Java实现队列结构的详细代码
- Java实现栈结构详细代码
- 数据结构之链表、栈和队列 java代码实现
- java目录结构配置,便于自己调整svn新下代码
- 算法——数据结构图的最短路径实现JAVA代码
- [图解数据结构之Java实现](0) --- 概要分析和目录分类
- Java中树的存储结构实现示例代码
- java 实现二叉树结构基本运算详细代码
- JAVA代码实现多级树结构封装对象
- 用JAVA实现文本形式的树状结构显示代码
- Java实现链表结构的具体代码
- JAVA用树结构实现目录系统
- java实现顺序结构线性列表的函数代码
- Java实现链表结构的详细代码
- 【Java数据结构学习笔记之一】线性表的存储结构及其代码实现
- 用Java实现ZIP压缩文件和目录程序代码
- java实现遍历文件目录,并在控制台以树形结构展示搜索出来的文件
- java数据结构之线性表代码实现