我在从Calender对象中抽出时间时遇到问题 我有一个像下面这样的方法将当前时间返回为String但重新调整的时间不正确
public static String getCreatedDate()
{
String createdDate = null;
String DATE_FORMAT_NOW = "yyyy-MM-dd'T'HH:mm:ss.SS";
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);
createdDate= sdf.format(cal.getTime());
System.out.println(createdDate);
return createdDate;
}
从该方法返回的日期/时间是2013-06-02T 08:18:09.68 ,但正确的时间应为 10:18:09.68 ...该方法将时间返回2小时....
答案 0 :(得分:3)
您可以在TimeZone
上设置SimpleDateFormat
:
sdf.setTimeZone(TimeZone.getTimeZone("Canada/Pacific"));
要查找可用的TimeZone
值,您可以进行如下简单测试:
for(String s : TimeZone.getAvailableIDs())
{
System.out.println(s);
}
检查您当前的默认TimeZone
值:
System.out.println(TimeZone.getDefault());
编辑:我之前的回答(在日历上设置区域设置)未经过测试且无法正常工作(请参阅JB Nizet的评论)。