如何在两个单独的字符串中获取文件的创建日期和时间? 我尝试使用
Date lastModDate = new Date(mChosenFile.lastModified());
,
但已被弃用。
答案 0 :(得分:2)
现有的java.io.File
课程无法提供创建时间,相反,您需要使用较新的Paths
API ...
Path path = Paths.get(file.toURI());
BasicFileAttributes attributes = Files.readAttributes(path, BasicFileAttributes.class);
FileTime creationTime = attributes.creationTime();
Date date = new Date(creationTime.toMillis());
然后,您可以使用DateFormater
格式化Date
值,例如......
String datePart = DateFormat.getDateInstance().format(lastModDate);
String timePart = DateFormat.getTimeInstance().format(lastModDate);
或者使用SimpleDateFormat
根据您的需要制作自定义格式。
请查看Managing Metadata (File and File Store Attributes)和SimpleDateFormat
了解详情
答案 1 :(得分:0)
java.util.Date中的许多方法都被弃用是有充分理由的,它们不是非常灵活,或者像setDate()
那样非常危险。请改用java.text.DateFormat
。
Date lastModDate = new Date(mChosenFile.lastModified()); // nothing wrong here
String datePart = DateFormat.getDateInstance().format(lastModDate);
String timePart = DateFormat.getTimeInstance().format(lastModDate);