java创建树形子目录,Java之File类及递归树形展示目录_20150804

Java之File类及递归树形展示目录

20150804

下面的构造函数可以用来生成File 对象:

File(String directoryPath)

File(String directoryPath, String filename)

File(File dirObj, String filename)

这里,directoryPath是文件的路径名,filename 是文件名,dirObj 一个指定目录的File 对象。下面的例子创建了三个文件:f1,f2,和f3。第一个File对象是由仅有一个目录路径参数的构造函数生成的。第二个对象有两个参数——路径和文件名。第三个File对象的参数包括指向f1文件的路径及文件名。f3和f2指向相同的文件。

File f1 = new File("/");

File f2 = new File("/","autoexec.bat");

File f3 = new File(f1,"autoexec.bat");

注意:Java 能正确处理UNIX和Windows/DOS约定路径分隔符。如果在Windows版本的Java下用斜线(/),路径处理依然正确。记住,如果你用Windows/DOS使用反斜线(/)的约定,你需要在字符串内使用它的转义序列(//)。Java约定是用UNIX和URL风格的斜线来作路径分隔符。

下面以一个小例子来说明一下File类常用的方法:

目标:以树形结构把指定的目录及文件打印在控制台上

思想:递归

package day04;

import java.io.File;

/*

* 打印树状目录

* 核心方法:递归

* 用到的方法:

* 1)f.getName() ---获得该目录的名字

* 2)f.list() ------列出该目录下所有的一级目录及文件,返回值String[]

*

*/

public class TestFile02 {

public static void printFile(File f,int lever){

for(int i=0;i

System.out.print("-");

}

System.out.println(f.getName());

if(f.isFile()){

return ;

}else{

String[] s=f.list();

for(int i=0;i

File f1=new File(f.getPath()+File.separator+s[i]);

printFile(f1,lever+1);

}

}

return ;

}

public static void main(String[] args) {

//String path="/home/soft01/QXL";

//可以用/也可以用File类提供的分隔符File.separator(建议用分隔符,不会有系统的问题)

String path="F:/JavaTrain/Teaching";

File f=new File(path);

printFile(f,0);

}

}

总结:File类常用的方法及属性都比较简单,基本上见名知意,不再啰嗦。特殊的几个在上面代码中有演示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419676.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用PDFBox解析PDF文件

今天在Nutch源码中准备增加一个PDF处理方面的功能,其中要做的一步是提取出PDF文档中的文本信息。考虑了一下,还是准备使用PDFBox。看了一下,Nutch源码中的parse-tika插件下有一个PDFBox,不过是1.1.0版本,很多PDF文档都…

matlab 数字图像滤波,数字图像处理 (基于Matlab) 滤波

《数字图像处理》实验报告一、实验目的(不少于200字)一、第一个实验用的是各种空间域的方式来滤波,也就是直接把图像和空间滤波器的模板做卷积,当然图像处理很重要的一个部分还有频域的处理。这就涉及到图像的傅里叶变换,通过将空域内的图像傅…

myelicpes怎么导入PHP项目,利用PHP执行SQL文件,将SQL文件导入到数据库

引用如何利用php自动执行 sql文件。其实很简单,就是获取sql文件中的内容,然后将每一句sql语句一次执行就行啦。//读取文件内容$_sql file_get_contents(test.sql);$_arr explode(;, $_sql);$_mysqli new mysqli(DB_HOST,DB_USER,DB_PASS);if (mysqli_…

atitit. 分销系统规划p8k

atitit. 分销系统规划p8k 1. 商户平台管理 overview2 1.1. 分销业务管理2 1.2. 文案管理2 1.3. 订单管理3 1.4. 统计报表3 1.5. 财务结算3 1.6. 自身信息管理4 2. 商户后台详细5 3. 推广人后台6 3.1. 产品及文案6 3.2. 订单与结算6 3.3. 下线邀请与奖励6 3.4. 订单统计6 3.5. 资…

php数据访问层设计,php - Zend框架数据访问层(DAL) - 堆栈内存溢出

好吧,在处理Data Access Layer ,您必须考虑的第一件事是该层还具有子层 ,在现代框架中很难找到名为“ dal”的文件夹(我以Zend为基础框架和Symfony)。其次,关于ActiveRecord ,您必须知道默认情况下Zend Frameworks 不会…

matlab 8.4,《DSP using MATLAB》Problem 8.42

代码:%% ------------------------------------------------------------------------%% Output Info about this m-filefprintf(‘\n***********************************************************\n‘);fprintf(‘ Problem 8.42 \n\n‘);banner();%% ------------…

lua的string.gsub初使用

今天在学习lua,熟悉项目代码的过程中,发现string.gsub好高级,所以在此mark下。 以下是lua5.1的官方文档介绍。 string.gsub (s, pattern, repl [, n])Returns a copy of s in which all occurrences of the pattern have been replaced by a …

php对象比较大小,PHP 面向对象:对象的比较

简明现代魔法 -> PHP服务器脚本 -> PHP 面向对象:对象的比较PHP 面向对象:对象的比较2010-04-07在PHP中有 赋值符号、 等于符号 和 全等于符号, 这些符号代表什么意思?当使用比较操作符()时,对象以一种很简单的规则比较&a…

mysql 备份

方法一: 1,暂停Mysql进程或服务 2,复制mysql\data文件夹 3,重新安装程序和mysql, 把 ibdata1及数据库文件夹copy到新目录 4,重启服务 方法二 数据导出:mysqldump -u数据库用户名 -p 要导出的数据库> otc…

php程序变量,PHP 变量

PHP 变量变量是用于存储信息的"容器":实例$x5;$y6;$z$x$y;echo $z;?>运行实例 与代数类似x5y6zxy在代数中,我们使用字母(如 x),并给它赋值(如 5)。从上面的表达式 zxy ,我们可以计算出 z 的值为 11。在 PHP 中&…

为什么构造函数不能是虚函数

为什么构造函数不能是虚函数 从存储空间角度看,使用虚函数时,系统要有一定的空间开销,当一个类带有虚函数时,编译系统会为该类构造一个虚函数表(virtual function table),他是一个指针数组&…

漏洞:WebRTC 泄漏用户IP

WebRTC又称为“网页即时通信”,是一组API函数,它经过W3C组织的认证,支持浏览器之间的语音通话、视频聊天和P2P模式分享文件。 这个协议主要包括:getUserMedia,RTCPeerConnection,RTCDataChannels&…

怎么在电脑安装php文件夹在哪个文件夹,php进行文件上传时找不到临时文件夹怎么办,电脑自动保存的文件在哪里...

php进行文件上传时找不到临时文件夹怎么办PHP上传文件时找不到临时文件夹怎么办,php上传文件时找不到临时文件夹的解决方案:先打开php.ini配置文件;然后修改内容[upload _ tmp _ dir’ c :/windows/temp ‘],文件夹路径要根据自己…

【SIGGRAPH 2015】【巫师3 狂猎 The Witcher 3: Wild Hunt 】顶级的开放世界游戏的实现技术。...

【SIGGRAPH 2015】【巫师3 狂猎 The Witcher 3: Wild Hunt 】顶级的开放世界游戏的实现技术 作者:西川善司日文链接 http://www.4gamer.net/games/202/G020288/20150811091/计算机图形和交互技术的学术大会【SIGGRAPH 2015】,在北美时间的8月9日到13日召…

php边框圆角,css3圆角和圆角边框使用方法总结

在CSS3出现之前,想要实现圆角的效果可以通过图片或者用margin属性实现,传统的圆角生成方案,需要多张图片作为背景图案。CSS3出现以后,就不需要浪费时间去制作多张图片了,大大的减少了工作量,提高了网页的性…

php中二进制函数,PHP-----函数和二进制

递归-----函数本身调用本身。每一个栈中的变量都是独立的,不受外部变量的影响,除非传参。这一点和Js不一样。在一个php页面中要引用其他的php文件可以使用require,require_once或者include,include_once;require引入的文件如果不存…

关于指针和堆栈

转载:http://blog.qdac.cc/?p2804 【码神】[长春]swish(109867294) 21:17:40 这块要明白一个东西,我们程序所能操作的数据,从CPU的角度来看,只是在寄存器中的那几个东西。剩下的内存中的东西,磁盘上的东西&#xff0c…