总是存储整个timestap
。 只要你想显示只是将时间戳转换为你想要将其转换为&显示它的任何时区。
这将有助于转换:(时间戳为日期或viseversa)
// timestamp to Date
long timestamp = 5607059900000; //Example -> in ms
Date d = new Date(timestamp);
// Date to timestamp
long timestamp = d.getTime();
//If you want the current timestamp :
Calendar c = Calendar.getInstance();
long timestamp = c.getTimeInMillis();
参见:convert TimeStamp to Date in Java
您可以使用SimpleDateFormat
显示不同的日期格式。
如:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class MainClass {
public static void main(String[] args) {
String pattern = "MM/dd/yyyy";
SimpleDateFormat format = new SimpleDateFormat(pattern);
try {
Date date = format.parse("12/31/2006");
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
// formatting
System.out.println(format.format(new Date()));
}
}
为什么在计算和显示仅日期部分时不考虑时间?例如。您将您的活动日期创建为2016-06-05T05:30:00.000Z,将其转换为目标时区(如果需要)并仅显示日期部分? – Aakash
“*我将日期存储在UTC *”=>您在哪里存储它?在一个变量?在数据库中?如果在数据库中,什么是列类型?等等 – assylias