private final DateFormat mDateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss", Locale.US);mDateFormat.format( new Date(file.lastModified())提示new Date(long date)已经过期应该如何处理
时间: 2024-03-09 10:50:03 浏览: 66
是的,new Date(long date) 已经过时了,作为替代方案,我们可以使用 new Date() 构造函数来代替。在这种情况下,我们可以将文件的最后修改时间作为参数传递给 new Date() 构造函数,如下所示:
```
String formattedDate = mDateFormat.format(new Date(file.lastModified()));
```
在这个代码中,我们使用了 new Date(file.lastModified()) 构造函数来获取一个 Date 对象,然后使用 format() 方法将日期格式化为所需的格式,这与以前使用 new Date(long date) 的方式是相同的。
相关问题
private final DateFormat mDateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss", Locale.US);mDateFormat.format( new Date(file.lastModified())提示new Date已经过期应该如何处理
确实,new Date() 已经过时了,应该使用 Calendar 对象来替换它。
可以用以下代码来替代:
```
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(file.lastModified());
String formattedDate = mDateFormat.format(calendar.getTime());
```
在这个代码中,我们使用了 Calendar.getInstance() 方法来获取一个 Calendar 对象,然后使用 setTimeInMillis() 方法将其设置为文件的最后修改时间。最后,我们使用 format() 方法将日期格式化为所需的格式,这与以前使用 new Date() 的方式是相同的。
private final SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
这是Java中的一个日期格式化工具类,用于将日期对象转换为指定格式的字符串。其中"yyyy/MM/dd"是日期格式,表示年份、月份、日份,例如:2022/02/28。在使用SimpleDateFormat时需要注意线程安全问题,可以使用ThreadLocal来解决。下面是一个示例代码:
```
private static final ThreadLocal<SimpleDateFormat> dateFormat = ThreadLocal.withInitial(() -> new SimpleDateFormat("yyyy/MM/dd"));
// 使用方式
Date date = new Date();
String dateString = dateFormat.get().format(date);
```
阅读全文