厚积薄发——JAVA之IO获取最新修改文件与创建文件时间

37 篇文章 0 订阅
27 篇文章 0 订阅

如何判断一个文件夹下哪个文件是新的或者被修改过,在java中没有提供获取文件创建的时间的方法,但是却提供了可以获取文件最后修改的时间的方法——lastModified()。这里简单记录一下该方法的使用:

public static void main(String[] args)
    {
        File dir = new File("D:/CORBA");
        File[] files = dir.listFiles();
        File latestFile = files[0];
        for(File file : files)
        {
            if(file.lastModified() > latestFile.lastModified())
            {
                latestFile = file;
            }
        }
        System.out.println("latest file is " + latestFile);
    }


如果在windows系统,一定要获取文件的创建时间,也是有方法,需要走点间接路,下面分享一下方法:

import java.io.*;

public class getCreateFileTime {
  public static void main(String[] args) {
    try {
      Process p = Runtime.getRuntime().exec("cmd /C dir f:\\modify.log /tc");

      InputStream is = p.getInputStream();
      BufferedReader br = new BufferedReader(new InputStreamReader(is));
      String result;
      String getTime = null;
      while ((result = br.readLine()) != null) {
        String[] str = result.split(" ");
        for (int i = str.length - 1; i >= 0; i--) {
          if (str[i].equals("modify.log")) {
            getTime = str[0] + " " + str[2];
          }
        }
      }
      System.out.println("modifyInfoLoade.log 文件的创建日期是:" + getTime);
    } catch (java.io.IOException exc) {
      exc.printStackTrace();
    }
  }
}


 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java类加载器是负责加载Java文件到JVM中的重要组件,它的主要作用是从磁盘或网络中加载类文件,并将其转化为JVM中的Class对象。Java类加载器按照加载类的范围可以分为以下三种: 1. 启动类加载器(Bootstrap ClassLoader):这是JVM内置的类加载器,它负责加载JVM运行时需要的核心类库,如java.lang包中的类等。这个类加载器是由C++编写的,所以在Java中看不到它的源代码。 2. 扩展类加载器(Extension ClassLoader):它负责加载Java的扩展类库,一般位于JRE的lib/ext目录下。这个类加载器是纯Java代码实现的,可以通过ClassLoader.getSystemClassLoader().getParent()方法获得它的父类加载器。 3. 应用程序类加载器(Application ClassLoader):也称为系统类加载器,它负责加载应用程序的类,一般是从CLASSPATH环境变量或者-D java.class.path选项所指定的目录或JAR文件中加载类。这个类加载器也是纯Java代码实现的,可以通过ClassLoader.getSystemClassLoader()方法获得它的实例。 总之,Java类加载器按照加载类的范围可以分为三种,分别是启动类加载器、扩展类加载器和应用程序类加载器。这三种类加载器按照加载的顺序依次向下委托加载类,如果当前类加载器无法加载某个类,则会将这个任务委托给它的父类加载器,直到系统的最顶层类加载器(启动类加载器)为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值