Get the number of days, weeks, and months, since Epoch in Java(获取自 Java 中的 Epoch 以来的天数、周数和月数)
问题描述
我试图在 Java 中获取自 Epoch 以来的天数、周数、月数.
I'm trying to get the number of days, weeks, months since Epoch in Java.
Java Calendar 类提供了诸如 calendar.get(GregorianCalendar.DAY_OF_YEAR) 或 Calendar.get(GregorianCalendar.WEEK_OF_YEAR) 之类的东西,这是一个好的开始,但它并不能完全满足我的需要.
The Java Calendar class offers things like calendar.get(GregorianCalendar.DAY_OF_YEAR), or Calendar.get(GregorianCalendar.WEEK_OF_YEAR), which is a good start but it doesn't do exactly what I need.
在 Java 中是否有一种优雅的方法可以做到这一点?
Is there an elegant way to do this in Java?
推荐答案
你可以使用 Joda Timelibrary 很容易做到这一点 - 除了使用标准 Java Date 和 Calendar 类之外,我将它用于与时间相关的任何事情.看看下面使用该库的示例:
You can use the Joda Time library to do this pretty easily - I use it for anything time related other than using the standard Java Date and Calendar classes. Take a look at the example below using the library:
MutableDateTime epoch = new MutableDateTime();
epoch.setDate(0); //Set to Epoch time
DateTime now = new DateTime();
Days days = Days.daysBetween(epoch, now);
Weeks weeks = Weeks.weeksBetween(epoch, now);
Months months = Months.monthsBetween(epoch, now);
System.out.println("Days Since Epoch: " + days.getDays());
System.out.println("Weeks Since Epoch: " + weeks.getWeeks());
System.out.println("Months Since Epoch: " + months.getMonths());
当我运行它时,我得到以下输出:
When I run this I get the following output:
Days Since Epoch: 15122
Weeks Since Epoch: 2160
Months Since Epoch: 496
这篇关于获取自 Java 中的 Epoch 以来的天数、周数和月数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!