JAVA怎样实现获取文件创建时间啊,求帮助。
3个回答
展开全部
Java只能读取到文件的最后修改时间,不能获取创建时间,
创建时间是利用了cmd命令获取的:
public class FileTest {
public static void main(String[] args) {
getCreateTime("d:\\test-1.txt");
getModifiedTime("d:\\test-1.txt");
}
public static void getCreateTime(String filePath) {
String strTime = null;
try {
Process p = Runtime.getRuntime().exec("cmd /C dir " + filePath + "/tc");
InputStream is = p.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = br.readLine()) != null) {
if (line.endsWith(".txt")) {
strTime = line.substring(0, 17);
break;
}
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("创建时间 " + 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));
System.out.println("修改时间[1] " + ctime);
}
}
更多追问追答
追问
谢谢大哥'我试试…
大哥'创建时间还是没有显示啊
展开全部
文件创建时间在Java 7/JDK 1.7之后才支持。早期Java 6 和部分linux只支持文件的“最后修改时间”。 很多环境下两个时间相同。
FileTime t=Files.readAttributes(Paths.get("c:\\dir\\file.txt"), BasicFileAttributes.class).creationTime();
System.out.println(t);
;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
表示获取最后修改时间可以用long File实例.lastModified(),获取创建时间倒是不知道
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询