gpt4 book ai didi

Ant 获取文件创建时间戳

转载 作者:行者123 更新时间:2023-12-05 01:21:38 24 4
gpt4 key购买 nike

我正在为 OpenCMS 项目编写一个 manifest.xml 文件。

我需要能够调出文件的创建日期和文件的最后修改日期。 (尽管当前进程为每个文件提供了 1969 年 12 月 31 日星期三 19:00:00 EST 的时间戳——至少在 Windows 机器上运行构建时是这样。)

有没有办法在 Ant 中提取文件的创建日期时间戳?我正在使用标准的 Ant 任务和 Ant-Contrib 任务。

最佳答案

我已经开始工作了。

作为Mark O'Connor指出,您无法从早期版本的 Java 中获取文件创建时间。但是,用于此任务的原始 Java 程序使用了 lastModified。创建日期和最后修改日期1 的方法。我做同样的事情很好。

我创建了一个 <scriptdef>从文件中提取上次修改日期。在 Java 1.6 及更高版本中,您可以直接访问 Rhino JavaScript 库,因此不再需要 BeanShell 库。

<scriptdef name="file.mdate" language="javascript"> 
<attribute name="file"/>
<attribute name="property"/>
file_name = attributes.get("file");
property_to_set = attributes.get("property");

file = new java.io.File(file_name);
file_date = file.lastModified();

date_format = new java.text.SimpleDateFormat("EEE, dd MMM YYYY HH:mm:ss zzz");
formated_date = date_format.format(new java.util.Date(file_date));
project.setNewProperty(property_to_set, formated_date);
</scriptdef>

定义后,我可以将其用作 Ant 任务:

<file.mdate
file="${file.name}"
property="file.modified.date"/>
<echo>The file "${file}" was modified on ${file.modified.date}</echo>

关于Ant 获取文件创建时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14714228/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com