java中的File类修改文件创建时间

java中的File类修改文件创建时间,第1张

文件的创建时间是修改不了的

java API只能获取文件更新时间

获取文件创建时间可以使用process 来调用dir命令

你获取的是相对1970年0点0分0秒000走过的毫秒数,可以这样实现

Date()有个构造方法是这样的!

package test;

public class Test {

/

@param args

/

public static void main(String[] args) {

// TODO Auto-generated method stub

Systemoutprintln(new javautilDate(1233403840906L));

}

}

假如你的jdk环境可以在17或之上,推荐你用nio包下的一个对象

代码如下:

Path p = Pathsget("C:/1txt")

  try {

   BasicFileAttributes att = FilesreadAttributes(p, BasicFileAttributesclass);//获取文件的属性

   attcreationTime()toMillis();

   attlastAccessTime()toMillis();

   attlastModifiedTime()toMillis();

  } catch (IOException e1) {

   e1printStackTrace();

  }

//如各个方法名称显示的,你研究下吧

package test;

import javaioFile;

import javatextSimpleDateFormat;

import javautilArrayList;

import javautilDate;

import javautilIterator;

import javautilList;

public class Test {

/

@param args

/

public static void main(String[] args) {

//设置日期转换格式

SimpleDateFormat smp = new SimpleDateFormat("yyyyMMdd");

//设置一个list,存放符合要求的文件名

List<String> list = new ArrayList<String>();

Date date = new Date();

//Systemoutprintln(smpformat(date));

//定义当前时间

int now_time= IntegerparseInt(smpformat(date));

String path = "D:/";

File file = new File(path);

//定义文件修改时间

int modify_time=0;

if(fileisDirectory()){

File[] files=filelistFiles();

for(int i = 0 ;i<fileslength;i++){

modify_time=IntegerparseInt(smpformat(new Date(files[i]lastModified())));

//当前时间减去修改时间==1的话 该文件符合要求

if(now_time-modify_time==1){

listadd(files[i]getName());

}

}

}

//遍历文件夹完毕,打印符合要求的文件名

if(listsize()>0){

for(Iterator<String> it = listiterator();ithasNext();){

Systemoutprintln(itnext());

}

}

}

}

以上就是关于java中的File类修改文件创建时间全部的内容,包括:java中的File类修改文件创建时间、我想用File类来获取文件的最后修改时间、java怎么获取文件的创建时间,最后访问时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9353657.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存