我需要在这一行添加一些内容:
String date = new SimpleDateFormat("dd-MMM-yy hh.mm.ss").format(new Date()).toUpperCase();
因为我需要时间来自UTC,而不是来自我当前的位置。你能帮我吗?
答案 0 :(得分:5)
你可以使用它:
final SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yy hh.mm.ss");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
final String utcTime = sdf.format(new Date());
或者查看java8 LocalDateTime和DateTimeFormat API。 java.util.Date,特别是SimpleDateFormat有点过时,如果可能的话,我建议不要使用SimpleDateFormat,因为它不是线程保存,在使用流或其他东西时可能会咬你。
Java 8替代方案:
String now = ZonedDateTime.now(ZoneOffset.UTC).format(DateTimeFormatter.ofPattern("dd-MMM-yy HH.mm.ss"));