java仿照微信聊天记录时间格式显示
Java 实现微信聊天记录时间格式显示
=====================================业务需求
------------需要根据时间戳或者日期,将时间显示的像QQ/微信聊天那样的格式。
具体效果
-------------
请自行查看QQ/微信聊天记录中的时间显示格式。
实现步骤
------------1. 时间工具类设计首先,我们需要设计一个时间工具类,负责将时间戳或者日期转换为指定的时间格式。我们可以使用Java的`SimpleDateFormat`类来实现这个功能。
```javaimport java.text.SimpleDateFormat;
import java.util.Date;
public class TimeUtil {
private static final String TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
public static String formatTime(long timestamp) {
Date date = new Date(timestamp *1000);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(TIME_FORMAT);
return simpleDateFormat.format(date);
}
public static String formatTime(Date date) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(TIME_FORMAT);
return simpleDateFormat.format(date);
}
}
```
2. 时间戳转换接下来,我们需要实现将时间戳转换为指定的时间格式的功能。我们可以使用`TimeUtil.formatTime()`方法来实现这个功能。
```javapublic class Main {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis();
String timeStr = TimeUtil.formatTime(timestamp);
System.out.println(timeStr); // 输出当前时间 Date date = new Date(timestamp);
timeStr = TimeUtil.formatTime(date);
System.out.println(timeStr); // 输出当前时间 }
}
```
3. 日期转换最后,我们需要实现将日期转换为指定的时间格式的功能。我们可以使用`TimeUtil.formatTime()`方法来实现这个功能。
```javapublic class Main {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis();
Date date = new Date(timestamp);
String timeStr = TimeUtil.formatTime(date);
System.out.println(timeStr); // 输出当前时间 Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
timeStr = TimeUtil.formatTime(calendar.getTime());
System.out.println(timeStr); // 输出当前时间 }
}
```
总结
----------
通过上述步骤,我们可以实现将时间戳或者日期转换为指定的时间格式,例如微信聊天记录中的时间显示格式。我们可以使用Java的`SimpleDateFormat`类来实现这个功能。
注意
------
* `TimeUtil.formatTime()`方法需要传入一个时间戳或日期对象。
* `TimeUtil.formatTime()`方法返回一个字符串表示指定的时间格式。
* `Calendar.getInstance()`方法用于获取当前日历实例。
* `calendar.getTime()`方法用于获取当前日历实例中的时间。
参考
------
* [Java API 文档 - SimpleDateFormat]( [Java API 文档 - Calendar](