Java中如何得到文件的创建时间&最后修改时间

Python0110

Java中如何得到文件的创建时间&最后修改时间,第1张

java中只能用java.io.File获得文件最后修改时间,如下:

比如我在D盘有个文件夹a,现在要获取其创建时间:

File file = new File("D:\\a")

long time = file.lastModified()//返回文件最后修改时间,是以个long型毫秒数

String ctime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date(time))

System.out.println(ctime)

想要获得文件的创建时间,那么只能用java去掉命令实现了,若为windows系统,想要拿到创建时间必须依赖Windows系统的API,通过调CMD命令实现, 代码如下:

 public static void main(String[] args) {   

        try {   

            Process p = Runtime.getRuntime().exec("cmd /C dir d:\\test.txt /tc")   

            InputStream is = p.getInputStream()   

            BufferedReader br = new BufferedReader(new InputStreamReader(is))   

            String str   

            int i = 0   

            while ((str = br.readLine()) != null) {   

                i++   

                if (i == 6) {   

                    System.out.println(str.substring(0, 17))   

                }   

            }   

        } catch (java.io.IOException exc) {   

            exc.printStackTrace()   

        }   

    }

可以通过File流的lastModified方法获取到修改时间的。举例:

public static void getModifiedTime(){

File f = new File("C:\\test.txt")

Calendar cal = Calendar.getInstance()

long time = f.lastModified()

cal.setTimeInMillis(time)

System.out.println("修改时间: " + cal.getTime().toLocaleString())

}

结果:修改时间:2015-06-29 10:32:38

File file = new File("文件路径")

long time = file.lastModified()//返回此抽象路径名表示的文件最后一次被修改的时间。

Date date = new Date(time)//转换成Date类型, 接下来自己操作