Date()
通过将long
值放入Date()
构造函数中,我可以将unix时间戳转换为对象。例如:我可以将其作为new Date(1318762128031)
。
但是之后,如何从该Date()
对象取回unix时间戳?
Date()
通过将long
值放入Date()
构造函数中,我可以将unix时间戳转换为对象。例如:我可以将其作为new Date(1318762128031)
。
但是之后,如何从该Date()
对象取回unix时间戳?
Answers:
getTime() = unixTimestamp * 1000
),getTime()
总是在最后返回三个零,但实际上能够从结尾返回任何东西000
来999
,它有它意味着更高的精度(以毫秒为单位),而不仅仅是“ * 1000”。含义:将真实的unixTimestamp * 1000与getTime()
结果进行比较只能在约0.1%的情况下成功。
为了得到一个timestamp
从Date()
,你需要来划分getTime()
的1000
,即:
Date currentDate = new Date();
currentDate.getTime() / 1000;
// 1397132691
或者简单地:
long unixTime = System.currentTimeMillis() / 1000L;
new Date().getTime()
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
public class Timeconversion {
private DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmm", Locale.ENGLISH); //Specify your locale
public long timeConversion(String time) {
long unixTime = 0;
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT+5:30")); //Specify your timezone
try {
unixTime = dateFormat.parse(time).getTime();
unixTime = unixTime / 1000;
} catch (ParseException e) {
e.printStackTrace();
}
return unixTime;
}
}