我需要使用java在linux机器上获取文件创建日期。许多变通办法在Windows中运行良好但在linux中失败了。需要一种在linux中获取文件创建时间的方法。请注意我的linux机器已经安装了java6。任何帮助深表感谢。谢谢你。
答案 0 :(得分:2)
您可以在Linux中使用stat
命令获取各种日期,但创建日期不可用。
相反,你可以获得关于文件的这3个日期:
修改强>
要获取Java中文件的创建/修改时间(如果使用JDK 1.7),请参阅:http://docs.oracle.com/javase/tutorial/essential/io/fileAttr.html
根据这份文件:
关于时间戳的一个词:基本属性集包括三个 时间戳:creationTime,lastModifiedTime和lastAccessTime。任何 这些时间戳可能不受特定支持 实现,在这种情况下相应的访问器方法 返回特定于实现的值。
不幸的是Linux / Unix没有存储文件的创建时间,因此你无法获得它。
PS:如果您可以使用 ext4 filesystem
,那么您可以在Unix / Linux中获取文件的创建时间。
答案 1 :(得分:0)
嗯,这是获取文件创建日期的代码,
import java.io.*;
import java.util.Date;
import java.text.SimpleDateFormat;
public class LastModifiedDateTime
{
public static void main(String[] args)
{
File file = new File("C:\\modifiedFile.txt");
System.out.println("Before file format : " + file.lastModified());
SimpleDateFormat sim = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
System.out.println("After file format : " + sim.format(file.lastModified()));
}
}
与此同时,您可以参考以下资源获取更多解释和示例