改变文件最后修改时间的Java程序
可以使用Java的File类(即File.setLastModified()方法)通过Java修改文件的日期
Java文件类
File 类是 Java 对文件或目录路径名的表示。 File 类包含多种方法,用于处理路径名、删除和重命名文件、创建新目录、列出目录的内容以及确定文件和目录的几个公共属性。
setLastModified 方法
setLastModified()函数是在Java File 类中预定义的一个方法。该函数设置文件或目录的最后修改时间。该函数以毫秒为单位设置文件的最后修改值(long 类型)。
参数– 由新的上次修改时间(以毫秒为单位)组成的字符串。
返回值——它返回一个布尔值。 (如果操作成功则为真,否则为假)。
如果在系统默认日期中未找到该文件,则打印为 30/01/1970,因为默认文件是由系统生成的。
现在要更改文件的最后修改日期,请按照给定的步骤操作。
- 首先,使用 SimpleDateFormat(“mm/dd/yyyy”) 构造函数创建一个新的 SimpleDateFormat 类实例。
- 然后,构造一个具有“mm/dd/yyyy”格式的 String 对象。
- 使用 SimpleDateFormat 类的 parse(String) 方法使用我们创建的 String 的日期值创建一个新的 Date 对象。
- 最后,使用 File.setLastModified(Date.getTime()) 方法设置我们文件的新“上次修改”日期。
Java
// Java program to change last
// modification time of a File
import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class GFG {
public static void main(String[] args)
{
try {
// Create an object of the File class
// Replace the file path with path of the file
// who's "last modified" date you want to change
File file = new File("/home/mayur/file.txt");
// Create an object of the SimpleDateFormat
// class
SimpleDateFormat sdf
= new SimpleDateFormat("mm/dd/yyyy");
// Print the current "last modified" date of the
// file
System.out.println(
"Original Last Modified Date : "
+ sdf.format((long)file.lastModified()));
// Create a string containing a new date that
// has to be set as "last modified" date
String newLastModified = "10/10/2020";
// Convert this new date into milliseconds
// format (in long type)
Date newDate = sdf.parse(newLastModified);
// Set the new date as the "last modified"
// date of the our file
file.setLastModified(newDate.getTime());
// Print the updated "last modified" date
System.out.println(
"Latest Last Modified Date : "
+ sdf.format(file.lastModified()));
}
catch (ParseException e) {
// In case of any errors
e.printStackTrace();
}
}
}
输出: