import java.io.*;
import java.util.*;
public class TestFile
{
public static void main(String args[])
{
String input=args[0];
File fp=new File(input);
System.out.println("路径:"+fp.getParent());
System.out.println("文件名:"+fp.getName());
System.out.println("绝对路径:"+fp.getAbsolutePath());
System.out.println("文件大小:"+fp.length());
System.out.println("是否为文件:"+fp.isFile());
System.out.println("是否为目录:"+fp.isDirectory());
System.out.println("是否隐藏:"+fp.isHidden());
System.out.println("是否可读:"+fp.canRead());
System.out.println("是否可写:"+fp.canWrite());
System.out.println("最后修改时间:"+new Date(fp.lastModified()));//这行
//好像有错,查不出来,谢谢
}
}
import java.util.*;
public class TestFile
{
public static void main(String args[])
{
String input=args[0];
File fp=new File(input);
System.out.println("路径:"+fp.getParent());
System.out.println("文件名:"+fp.getName());
System.out.println("绝对路径:"+fp.getAbsolutePath());
System.out.println("文件大小:"+fp.length());
System.out.println("是否为文件:"+fp.isFile());
System.out.println("是否为目录:"+fp.isDirectory());
System.out.println("是否隐藏:"+fp.isHidden());
System.out.println("是否可读:"+fp.canRead());
System.out.println("是否可写:"+fp.canWrite());
System.out.println("最后修改时间:"+new Date(fp.lastModified()));//这行
//好像有错,查不出来,谢谢
}
}
解决方案 »
- 在eclipse里写了个程序却找不到文件怎么办? java.io.FileNotFoundException: FileInputStreamTest.java (系统找不到指定的文件。)
- 几个类写在一起 怎样命名文件名?
- JAVA程序报错:无法解析导入
- java2程序设计(电子工业出版社)课后习题疑问。
- 求救:java.lang.OutOfMemoryError: Java heap space
- 能否给JPanel添加关闭事件?
- Diff 算法
- 如何快速检测网络是否是通的??
- 如何返回数据库,ncharnvarchar型的字段!
- 小弟刚学java 连个环境都配不好,调不出hello,在线等
- java制作可执行文件EXE和安装的另类方式
- 高分,求简单树形结构代码,实现即给分。。。
fp.lastModified().ToString());
它本身就是一种时间的表示方式,所以不能再new Date了
但是如果把他与字符串拼接就回出错了。如果改成System.out.println(new Date(fp.lastModified()));//这行
就不会报错,不过打印出来的是new Date这个对象的地址。
是这个文件运行结果和你想象的不一样还是因为运行的时候会报错?
1.如果运行与预期的不同,请说明预期结果;
2.如果运行时报错,请检查运行时候的参数,这个程序必须有参数传进去才能运行(String input=args[0]; ),否则会有空指针错误
测试了一下;LZ的程序是没有问题的...
不过最后一个给你稍微改了一下,看的清楚点..package file;import java.io.*;
import java.util.*;
import java.text.SimpleDateFormat;;
public class TestFile
{
public static void main(String[] args)
{
String input="c:\\a.txt";
File fp=new File(input); System.out.println("路径:"+fp.getParent());
System.out.println("文件名:"+fp.getName());
System.out.println("绝对路径:"+fp.getAbsolutePath());
System.out.println("文件大小:"+fp.length());
System.out.println("是否为文件:"+fp.isFile());
System.out.println("是否为目录:"+fp.isDirectory());
System.out.println("是否隐藏:"+fp.isHidden());
System.out.println("是否可读:"+fp.canRead());
System.out.println("是否可写:"+fp.canWrite());
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date mydate=new Date(fp.lastModified());
System.out.println("最后修改时间:"+format.format(mydate));//这行
//好像有错,查不出来,谢谢
}
}
java.util.Date中带毫秒数的构造没有过期啊,可以使用的。看不出有什么错误。
Date
public Date(long date)
分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
有文档看来,你的构造方法没有错!
编译到是没错,但不能运行。
E:\>javac TestFile.javaE:\>java TestFile
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at TestFile.main(TestFile.java:7)
为什么不直接打印出最后运行的时间呢?直接用
System.out.println("最后修改时间:"+(fp.lastModified()));