java记录访问时间_在java中记录上次访问时间和上次修改时间?

java记录访问时间_在java中记录上次访问时间和上次修改时间?首先,让我们关注这些事物的含义.访问–上次读取文件的时间,即上次访问文件数据的时间.修改–上次修改文件(内容已被修改),即文件数据上次修改的时间.更改–文件的元数据的最后一次更改(例如,权限),即上次更改文件状态的时间.编辑.访问时间正在改变.我建议你使用Thread.sleep(100)或其他东西,然后看看这个问题是否仍然存在.如果是这样,罪魁祸首就必须是您正在运行的操作系统,因为J…

大家好,又见面了,我是你们的朋友全栈君。

首先,让我们关注这些事物的含义.

访问 – 上次读取文件的时间,即上次访问文件数据的时间.

修改 – 上次修改文件(内容已被修改),即文件数据上次修改的时间.

更改 – 文件的元数据的最后一次更改(例如,权限),即上次更改文件状态的时间.

编辑.

访问时间正在改变.我建议你使用Thread.sleep(100)或其他东西,然后看看这个问题是否仍然存在.

如果是这样,罪魁祸首就必须是您正在运行的操作系统,因为Java只是从文件系统中读取. @Serge Ballesta的注释应该让我们了解Windows NTFS有一个选项,可以出于性能原因禁止将对文件属性所做的每个更改写回硬盘驱动器.实际上还有更多.

从[docs]起,

NTFS delays updates to the last access time for a file by up to one hour after the last access. NTFS also permits last access time updates to be disabled. Last access time is not updated on NTFS volumes by default.

以下是在mac os x上运行脚本的一些数据.

calling getFileInfo() at: 11.4.2016 3:13:08:738

accessTime : 11.4.2016 3:12:53:0

modifiedTime : 29.10.2015 1:49:14:0

——————–

sleeping for 100ms

——————–

calling readFIleData() at: 11.4.2016 3:13:08:873

——————–

sleeping for 100ms

——————–

re-calling getFileInfo() at: 11.4.2016 3:13:08:977

accessTime : 11.4.2016 3:13:08:0

modifiedTime : 29.10.2015 1:49:14:0

——————–

sleeping for 100ms

——————–

re-calling getFileInfo() at: 11.4.2016 3:13:09:81

accessTime : 11.4.2016 3:13:08:0

modifiedTime : 29.10.2015 1:49:14:0

为了提高清晰度,您可以将毫秒数转换为更具可读性的内容.以下代码片段将详细说明.

long accessTimeSinceEpoch = Files.readAttributes(file, BasicFileAttributes.class).lastAccessTime().toMillis();

Calendar calendar = Calendar.getInstance();

calendar.setTimeInMillis(accessTimeSinceEpoch);

int mYear = calendar.get(Calendar.YEAR);

int mMonth = calendar.get(Calendar.MONTH);

int mDay = calendar.get(Calendar.DAY_OF_MONTH);

int mHour = calendar.get(Calendar.HOUR);

int mMin = calendar.get(Calendar.MINUTE);

int mSec = calendar.get(Calendar.SECOND);

int mMilisec = calendar.get(Calendar.MILLISECOND);

String st = mDay + “.” + mMonth + “.” + mYear + ” ” + mHour + “:” + mMin + “:” + mSec + “:” + mMilisec;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156881.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月8日 下午6:46
下一篇 2022年7月8日 下午6:46


相关推荐

  • 51单片机LED点阵实验(74HC595)

    51单片机LED点阵实验(74HC595)实验目的 用 8 8 的 LED 点阵显示一颗爱心 实验仪器 普中开发板 非广告 实验背景 出于一些原因 最近在看 Arduino 但仍觉得 51 好玩 遂 一边看 Arduino 一边整理 51 8 8 的 LED 点阵电路如图一所示 有两种方式 单片机上集成的电路方式为第二种 其中 行由 P0 口控制 列由 D7 D0 HC595 芯片控制 见下方 控制 图一首先考虑 如何先点亮一个灯 eg 让

    2026年3月17日
    1
  • 金融衍生品交易系统(场内交易VS.场外交易)的架构特点

    金融衍生品交易系统(场内交易VS.场外交易)的架构特点背景在说金融衍生品交易系统之前 先来了解一下在金融机构中那些靠交易赚钱的部门 他们是金融信息系统的用户 也是主要的 stakeholder 也就是金主 1 Equitytradin 股票交易部门所谓股票交易部门 其实不仅仅做股票 还有期货 期权 场内 等等 只要是交易所内的产品 都在这个部门交易 2 FICC 固定收益部门 FICC 是 FX Foreignexcha Inte

    2026年3月19日
    2
  • 卷积神经网络概念与原理[通俗易懂]

    卷积神经网络概念与原理[通俗易懂]一、卷积神经网络的基本概念受Hubel和Wiesel对猫视觉皮层电生理研究启发,有人提出卷积神经网络(CNN),YannLecun最早将CNN用于手写数字识别并一直保持了其在该问题的霸主地位。近年来卷积神经网络在多个方向持续发力,在语音识别、人脸识别、通用物体识别、运动分析、自然语言处理甚至脑电波分析方面均有突破。卷积神经网络与普通神经网络的区别在于,卷

    2022年6月13日
    32
  • python之sympy库–数学符号计算与绘图必备[通俗易懂]

    python之sympy库–数学符号计算与绘图必备[通俗易懂]在实际进行数学运算的时候,其实有两种运算模式,一种是数值运算,一种是符号运算(代数)。而我们日常使用计算机进行数值运算,尤其是比如除、开平方等运算时,往往只能得到其近似值,最终总会已一定的误差,如果使用符号运算模式,则可以完全避免此种问题。一、数学符号及符号表达式符号表达式,区别于常规的数值型数学表达式,常规数学表达式,比如x+y*2等,基本x和y是一个变量,且变量最终也会被赋值,由变量组成的表达式,最后得出的也是一个数值。而符号表达式,则真正的由符号组成,而符号无需提前赋值,由符号组成的表达式

    2022年6月4日
    43
  • 另一个角度看 OpenClaw 分析 package.json 依赖看 2026 年包最新趋势

    另一个角度看 OpenClaw 分析 package.json 依赖看 2026 年包最新趋势

    2026年3月16日
    2
  • win11本地部署openclaw实操第5集-X11图形化界面搭建,让WSL2“看见”世界

    win11本地部署openclaw实操第5集-X11图形化界面搭建,让WSL2“看见”世界

    2026年3月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号