我必须根据当前的伦敦时间戳命名一个文件,所以我更喜欢这样做,如下所示..
/
/the time zone for London.
TimeZone london = TimeZone.getTimeZone("Europe/London");
SimpleDateFormat formatter = new SimpleDateFormat("MM-dd-yyyy-HH-mm", Locale.UK);
formatter.setTimeZone(london);
Calendar now = Calendar.getInstance();
String t =fileIdentifier+"-"+formatter.format(now.getTime())+"."+"doc";
但是现在我不是当前的伦敦时间,而是尝试当前的GMT时间 在文件名中不明显,请告知需要进行哪些修改才能显示当前的GMT时间。我想出了这个解决方案..
TimeZone london = TimeZone.getTimeZone("GMT");
SimpleDateFormat formatter = new SimpleDateFormat("MM-dd-yyyy-HH-mm");
Calendar now = Calendar.getInstance();
String t =fileIdentifier+"-"+formatter.format(now.getTime())+"."+"doc";
请告知我的上述方法是否会以文件名显示当前的GMT时间
答案 0 :(得分:0)
在格式化TimeZone
之前,您必须使用DateFormat#setTimeZone
将SimpleTimeFormat
设置为Date
对象。这是一个例子:
SimpleDateFormat formatter = new SimpleDateFormat("MM-dd-yyyy HH:mm");
Calendar now = Calendar.getInstance();
System.out.println(formatter.format(now.getTime()));
TimeZone gmt = TimeZone.getTimeZone("GMT");
formatter.setTimeZone(gmt);
System.out.println(formatter.format(now.getTime()));
这里秘鲁(格林威治标准时间-5)是凌晨12点17分。目前的输出是:
07-15-2013 00:17 //no GMT
07-15-2013 05:17 //GMT