用file, 比如我在D盘有个文件夹a,现在要获取其创建时间: File file = new File("D:\\a"); long time = filelastModified();//返回文件最后修改时间,是以个long型毫秒数 String ctime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")format
能不能换个思路~~~汗啊~!好像用java的函数只能取得lastModified()有一个比较笨的方法
Process p=RuntimegetRuntime()exec("dir startupbat /t -c");
然后取得p的输出信息就可以得到创建时间了!上面的例子我是得到tomcat的startupbat这个文件的创建时间,如果你想得到其它文件的创建时间就可以将startupbat换成其它文件名!study and mark ^_^如果用dir, 取得创建时间的参数是/TC路过学习ing帮您顶java是用native来获取 *** 作系统的支持,从而对文件进行 *** 作。
具体实现类是
javaioFileSystem
这个类是私有的只能在jdk内部使用,由于这个类没有提供文件时间创建的接口,你也就没有办法用纯java来获得这一个功能(但愿不是这样)。
有一个简单的方法是自己调用系统函数,或者干脆调用各C函数
先写各本地类访问方法
class MyFileSystem{
public native void getCreatFileTime(File f);static {SystemloadLibrary(" ");}
public static void main(String[] args) {
new HelloWorld()getCreatFileTime();}}编译本文件然后执行 javah,便会自动产生头文件 MyFileSystemh
函数的具体实现如下:
#include
#include "MyFileSystemh"
#include
JNIEXPORT double JNICALL
Java_MyFileSystem_displayHelloWorld(JNIEnv env, jobject obj){//在这里调用C函数
double time=getFileCreatTime_IN_C(obj)
return time;}高手如云,我心忐忑
奋发图强~高手如云,我心忐忑奋发图强~me too,高手如云,我心忐忑奋发图强~me too,too还有可以复制javaioFileSystem及相关类的源代码,把所有东西成public的,这样总可以用了吧,
当然把类名也改掉。。。。。顶!
Study!Up!!!顶一下!
支持upFile f = new File("d:\\atxt");
Date date = new Date();
long L = dategetTime();
fsetLastModified(L);
以上个函数可以设置文件的最后修改时间,以及设置文件为“只读”属性顶!!!
Java只能读取到文件的最后修改时间,不能获取创建时间,
创建时间是利用了cmd命令获取的:
public class FileTest {
public static void main(String[] args) {
getCreateTime("d:\\test-1txt");
getModifiedTime("d:\\test-1txt");
}
public static void getCreateTime(String filePath) {
String strTime = null;
try {
Process p = RuntimegetRuntime()exec("cmd /C dir " + filePath + "/tc");
InputStream is = pgetInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = brreadLine()) != null) {
if (lineendsWith("txt")) {
strTime = linesubstring(0, 17);
break;
}
}
} catch (IOException e) {
eprintStackTrace();
}
Systemoutprintln("创建时间 " + strTime);
}
public static void getModifiedTime(String filePath) {
long time = new File(filePath)lastModified();
String ctime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")format(new Date(time));
Systemoutprintln("修改时间[1] " + ctime);
}
}
在Linux中,没有文件创建时间的概念。只有文件的访问时间、修改时间、状态改变时间。也就是说不能知道文件的创建时间。但如果文件创建后就没有修改过,修改时间=创建时间;如果文件创建后,状态就没有改变过,那么状态改变时间=创建时间;如果文件创建后,没有被读取过,那么访问时间=创建时间,这个基本不太可能。
你们这些人都不看MSDN啊?
FileGetCreationTime 方法
NET Framework 4 其他版本 NET Framework 35
NET Framework 30
NET Framework 20
Silverlight
返回指定文件或目录的创建日期和时间。
命名空间: SystemIO
程序集: mscorlib(在 mscorlibdll 中)
语法
--------------------------------------------------------------------------------
C#C++F#VB
复制
public static DateTime GetCreationTime(
string path
)
参数
path
类型:SystemString
要获取其创建日期和时间信息的文件或目录。
返回值
类型:SystemDateTime
一个 DateTime 结构,它被设置为指定文件或目录的创建日期和时间。 该值用本地时间表示。
1获取文件创建时间示例:
$ctime=filectime("chinawinxptxt");echo "创建时间:"date("Y-m-d H:i:s",$ctime);
2获取文件修改时间示例:
$mtime=filemtime("chinawinxptxt");echo "修改时间:"date("Y-m-d H:i:s",$mtime);
以上就是关于如何获取文件的创建时间全部的内容,包括:如何获取文件的创建时间、Java如何获取文件的创建时间、JAVA怎样实现获取文件创建时间啊,求帮助。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)