我想将时间戳(纪元时间)转换为人类可读的字符串。
为此,我使用 calendar.setTimeInMillis(timeSinceEpoch)
函数来创建日历对象并获取人类可读格式的日期时间字符串。
我很困惑,如何根据系统的当前日期和时间找出时间戳(纪元时间)是今天还是昨天,或者是在同一周?
是否有任何 API 可以在 android 中实现此目的?
谢谢。
最佳答案
您可以使用方法:
public static long diff(long time, int field) {
long fieldTime = getFieldInMillis(field);
Calendar cal = Calendar.getInstance();
long now = cal.getTimeInMillis();
return (time/fieldTime - now / fieldTime);
}
private static final long getFieldInMillis(int field) {
// TODO cache values
final Calendar cal = Calendar.getInstance();
long now = cal.getTimeInMillis();
cal.add(field, 1);
long after = cal.getTimeInMillis();
return after - now;
}
并以这种方式使用它们:
diff(time, Calendar.DAY_OF_YEAR); // 0 - today, 1 - tomorrow, -1 - yesterday
diff(time, Calendar.WEEK_OF_YEAR); // 0 - this week, -1 - last week etc.
关于java - 如何检查时间戳(纪元时间)是今天还是昨天[android],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9394906/