如何判断一个文件夹下哪个文件是新的或者被修改过,在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();
}
}
}