用java 编写一个程序,在命令行中以树状结构展现特定的文件夹及其子文件(夹)!

 我来答
匿名用户
推荐于2017-12-16
展开全部
import java.io.*;
class testfilelist {
public static void main(String[] args) {
String separator = File.separator;//与系统有关的默认名称分隔符,出于方便考虑,它被表示为一个字符串。
String filename = "myfile.txt";//文件名
String directory = "mydir1" + separator + "mydir2"+ separator +"mydir3";//mydir1\mydir2\mydir3\myfile.txt
crate(directory,filename);//给出个方法创建文件 if--有就创建 else--就输出文件名和大小

File f=new File("D:/My Documents/java12");//指定文件位置
System.out.println(f.getName());//打印在这个文件下的文件夹;
tree(f,1);//方法!进入子文件夹中 并打印子文件名
}
private static void tree(File f,int level) {
String preStr="";//缩进量
for(int i=0;i<level;i++) {
if(i==level-1)
preStr=preStr+"┗";
else
preStr=preStr+"*";//级别 - 代表这个目下下的子文件夹
}
File[] childs=f.listFiles();//返回一个抽象路径名数组,这些路径名表示此抽象路径名所表示目录中的文件
for(int i=0;i<childs.length;i++)
{
System.out.println(preStr+childs[i].getName());//打印子文件的名字
if(childs[i].isDirectory()) //测试此抽象路径名表示的文件是否是一个目录
{
tree(childs[i],level+1);
}//如果子目录下还有子目录,递归子目录调用此方法
}
}
public static void crate(String di,String fn){

File f = new File(di, fn);
if (f.exists())//测试此抽象路径名表示的文件或目录是否存在
{
System.out.println("文件名:" + f.getAbsolutePath());
System.out.println("文件大小:" + f.length());
} else {
f.getParentFile().mkdirs();// 返回此抽象路径名的父路径名的抽象路径名,如果此路径名没有指定父目录,则返回 null .mkdirs()//创建此抽象路径名指定的目录
try {
f.createNewFile();//当且仅当不存在具有此抽象路径名指定的名称的文件时,原子地创建由此抽象路径名指定的一个新的空文件
} catch (IOException e) {
e.printStackTrace();
}
}
}
} 应该满足楼主的意思!嘿嘿
TableDI
2024-07-18 广告
在上海悉息信息科技有限公司,我们深知Excel在数据处理中的重要作用。在Excel中引用不同工作表(sheet)的数据是常见的操作,这有助于整合和分析跨多个工作表的信息。通过在工作表名称前加上感叹号“!”,您可以轻松地引用其他工作表中的数据... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式