从毫秒创建一个GregorianCalendar实例
问题描述:
我有一定的时间(毫秒)(在Timestamp
对象中),我想用它来创建一个GregorianCalendar
对象。我怎样才能做到这一点?从毫秒创建一个GregorianCalendar实例
编辑:我该如何做相反的事?
答
刚刚得到的GregorianCalendar和时刻设定的实例与您的java.sql.Timestamp timestamp
:
Calendar cal=GregorianCalendar.getInstance();
cal.setTime(timestamp);
答
我相信这部作品,虽然它可能不是最好的方法:
import java.sql.Date;
import java.sql.Timestamp;
import java.util.GregorianCalendar;
public class TimestampToGregorianCalendar {
/**
* @param args
*/
public static void main(String[] args) {
Timestamp t = new Timestamp(12356342); // replace with existing timestamp
Date d = new Date(t.getTime());
Calendar gregorianCalendar = GregorianCalendar.getInstance();
gregorianCalendar.setTime(d);
}
}
答
Timestamp timestamp = new Timestamp(23423434);
Calendar calendar = GregorianCalendar.getInstance();
calendar.setTimeInMillis(timestamp.getTime());
答
要获得GregorianCalendar对象而不是像Michael的答案中提供的日历对象,您还可以尝试以下操作:
long timestamp = 1234567890;
GregorianCalendar cal = new GregorianCalendar();
cal.setTimeInMillis(timestamp);
这里假定UTC时代的时间戳。
+2
+1 UTC时代时间戳信息:) – 2014-07-05 09:45:27
值得注意的是,setTimeInMillis(...)方法是从Calendar类继承的。另外,在你的答案中格式化代码会很有帮助。 :) – Riggy 2010-12-15 13:27:32
所以如果你在时间戳中设置时间,然后获取,为什么创建时间戳记对象呢?击败我 – 2017-09-12 21:29:49
@KalpeshSoni“我有一定的时间以毫秒为单位(在Timestamp对象中)” - OP – aepryus 2017-09-12 23:46:07