linux下Java获得文件的创建时间(精确到秒) 用ls -l命令只能取到分钟位,无法获得秒位windows中已经通过jni实现了,linux下如何实现,希望高人指点,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 答:在我的印像中,好像UNIX或LINUX平台下文件系统中就没有保存文件的创建时间,只有文件的最后修改的时间。否则的话,JAVA中File类就应该有支持这个属性的方法了。以上仅供你参考 在Linux中,没有文件创建时间的概念。只有文件的访问时间、修改时间、状态改变时间。也就是说不能知道文件的创建时间。 多谢关注!我的需求是这样的,我在这说一下,高人帮我看看有一个ftp服务器接收文件,每个文件都有一定的时效,我要判断每个文件是及时到达还是逾限我的程序不停地处理这些文件,处理的时候我要获取文件的 接收时间(在windows中我获取的文件的创建时间) 计算时效记录日志这个时间如果是获取系统当前时间会有一定问题,一旦我的程序出了问题就无法再获得每个文件真正的接收时间.我理解的接收时间应该是 文件ftp到我的服务器的时候,请问各位高人,我在win下获取创建时间应该是正确的吧,在linux下我应该获取哪个时间呢.多谢. 答:原来是这样。我想在LINUX下,就以修改时间为你的文件时间。如:只要不改文件就行。方法:如要获取文件mydata.dat,则:命令:ls --full-time mydata.dat显示结果:-rw-r--r-- 1 root root 0 2008-04-26 22:47:50.000000000 +0800 mydata.dat上边红色的就是你要的。你就手JAVA直接取吧。以上仅供你参考 答:LINUX下既然如此,除了上述ls命令外,用的是最后修改时间,或者,倒不如直接用JAVA的File类取最后修改时间了。以上仅供你参考 答:说明:LINUX下文件刚创建好,以后全是文件读操作(没有执行过存盘操作),则取的文件修改时间就是文件创建的时间。 TO jiangnaisong :我再做些试验测试一下还有,问一下sprintf(fileTimeString,"%d.%d.%d %d:%d:%d.%d\0", creationSystemTime.wYear, creationSystemTime.wMonth, creationSystemTime.wDay, creationSystemTime.wHour, creationSystemTime.wMinute, creationSystemTime.wSecond, creationSystemTime.wMilliseconds);我若想得到 2008.04.25 23:16:19.890 "%d.%d.%d %d:%d:%d.%d\0"应该怎么写 解决了,呵呵"04%d.%02d.%02d %02d:%02d:%02d.%03d\0"就可以了. 关于static 抽象类是包含抽象方法的类,只须声明,不需实现?? this、super 关键字 JBUTTON的凸出怎么去掉啊? 资源回收问题 赐教:java分析apache日志 jTextArea中怎么把关键字变色? 每次请求都是同一条线程,急急急急急急 初学者问题?简单问题 第一个java程序,怎么运行的时候老是报错? java输入输出流 字符串搜索问题
我的需求是这样的,我在这说一下,高人帮我看看
有一个ftp服务器接收文件,每个文件都有一定的时效,我要判断每个文件是及时到达还是逾限
我的程序不停地处理这些文件,处理的时候我要获取文件的 接收时间(在windows中我获取的文件的创建时间) 计算时效记录日志
这个时间如果是获取系统当前时间会有一定问题,一旦我的程序出了问题就无法再获得每个文件真正的接收时间.我理解的接收时间应该是 文件ftp到我的服务器的时候,请问各位高人,我在win下获取创建时间应该是正确的吧,在linux下我应该获取哪个时间呢.多谢.
方法:如要获取文件mydata.dat,则:
命令:ls --full-time mydata.dat
显示结果:-rw-r--r-- 1 root root 0 2008-04-26 22:47:50.000000000 +0800 mydata.dat
上边红色的就是你要的。你就手JAVA直接取吧。
以上仅供你参考
我再做些试验测试一下还有,问一下
sprintf(fileTimeString,"%d.%d.%d %d:%d:%d.%d\0",
creationSystemTime.wYear,
creationSystemTime.wMonth,
creationSystemTime.wDay,
creationSystemTime.wHour,
creationSystemTime.wMinute,
creationSystemTime.wSecond,
creationSystemTime.wMilliseconds);
我若想得到 2008.04.25 23:16:19.890 "%d.%d.%d %d:%d:%d.%d\0"应该怎么写
"04%d.%02d.%02d %02d:%02d:%02d.%03d\0"
就可以了.