仿cmd命令行下的dir

这里要给大家呈现的是如何利用java下的IO来模仿Windows下面的cmd命令行的dir命令:

package a10;

import java.io.File;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.SimpleFormatter;

public class Test103 {
    public static void main(String[] args) {
        File f = new File("F:\\myeclipse 6.5");
        System.out.println(f.exists());
        //File[] fs = f.listFiles();
        for (int i = 0; i < fs.length; i++) {
            Date date = new Date(fs[i].lastModified());
            SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd hh:mm:ss");

            System.out.print(sdf.format(date) +"\t");
            if (fs[i].isDirectory()) {
                System.out.print("<DIR>\t");
            } else {
                System.out.print("\t");
            }
            if (fs[i].isFile()) {
                DecimalFormat dFormat = new DecimalFormat("#,##0.00");

                System.out.print(dFormat.format(fs[i].length()/1024.0)+"KB"+"");

            }
            System.out.println("\t"+fs[i].getName());
        }
    }

}

运行结果为:

true
2015-04-12 11:47:44 <DIR>       code
2009-04-13 09:05:08     451,610.26KB    MyEclipse6.5.0GAE3.3.2InstallerA.exe
2011-11-03 11:56:52     449,696.78KB    MyEclipse6.5.zip
2013-02-24 01:50:20     9.18KB  MyEclipse6.5注册机.rar
2015-03-23 04:11:26     0.03KB  新建 文本文档.txt
2011-04-11 08:30:42     1.59KB  西西下载.txt
2011-04-28 05:57:10     0.08KB  西西软件.url

下面对以上代码中的重点进行讲解:
1.

SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd hh:mm:ss");

1.这个类SimpleDateFormat 中就有Date这个单词,所以是来处理Date类型的类,可以按照我们所想的格式来写。
Y/y:年。一般为“yyyy”
M:月。一般为“MM”
m:分钟。例为:“mm”
D:年中的天数。
d:月中天数。例为:“dd”
H/h:小时。例为:“hh”
s:分钟中秒数。例为:“ss”
new SimpleDateFormat(“YYYY-MM-dd hh:mm:ss”);
这里就是例如:“1994-09-28 14:23:43”
按照如上格式创建的一个SimpleDateFormat类对象,然后sdf调用format()方法(这个是继承至Format父类),返回String

2.

DecimalFormat dFormat = new DecimalFormat("#,##0.00");
System.out.print(dFormat.format(fs[i].length()/1024.0)+"KB"+"");

Decimal:小数的,十进位的(英译汉)
new DecimalFormat(“#,##0.00”);和上面的那个SimpleDateFormat类类似,上述那种方式是从个位开始,每三位有个“,”做间隔。
“#”:阿拉伯数字,如果不存在则显示为 0 ,若在小数点后面的话,若为整数,就不显示字符。
“0”:阿拉伯数字 ,若在小数点后面的话,若为整数,就显示“0”,否者该显示多少就是多少。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值