簡體   English   中英

將GMT轉換為BST Java

[英]Convert GMT to BST Java

我的日期格式為GMT格式yyyy/mm/dd hh:mm:ss 我想將日期從GMT格式轉換為BST時間。 最簡單的方法是什么?

使用Java 8,最簡單的方法可能是:

  • 將日期解析為LocalDateTime
  • 使用它使用GMT時區創建ZonedDateTime
  • 將時區更改為BST
  • 獲取該新日期的LocalDateTime

示例示例:

String date = "2015/03/09 10:32:00";
LocalDateTime gmt = LocalDateTime.parse(date, DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"));
ZonedDateTime instant = ZonedDateTime.of(gmt, ZoneId.of("GMT"));
LocalDateTime bst = instant.withZoneSameInstant(ZoneId.of("Europe/London")).toLocalDateTime();
System.out.println(bst);

例如,如果您將月份更改為7月,則應該看到預期的一小時偏移。

(我假設BST是英國夏令時-也可以是孟加拉國標准時間:通常最好使用時區的全名以避免歧義)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM