我有一个日期存储在数据库中,字符串格式为ddMMyyyy,hh:mm和TimeZone。 我想根据这些信息创建一个Instant,但我不知道该怎么做。Java 8 - 使用TimeZone从LocalDateTime创建即时
像
LocalDateTime dateTime = LocalDateTime.of(2017, Month.JUNE, 1, 13, 39);
Instant instant = dateTime.toInstant(TimeZone.getTimeZone("ECT"));
你的意思是'ZonedDateTime.ofInstant(instant,TimeZone.getDefault())'? – soorapadman
@soorapadman这将返回一个ZonedDateTime。 OP想要一个即时。 –
**不要在时区中使用3-4字符缩写**这些*不是*实时区域,不是标准化的,甚至不是唯一的!使用[欧洲/伦敦](https://en.m。)格式的[大陆/地区]格式的[真实时区名称](https://en.m.wikipedia.org/wiki/List_of_tz_database_time_zones) ,“欧洲/巴黎”(https://en.m.wikipedia.org/wiki/Europe/Paris),“亚洲/加尔各答”,“太平洋/奥克兰”。如果通过“ECT”表示厄瓜多尔时间,则使用'ZoneId.of(“America/Guayaquil”)'。如果您的意思是中欧,请使用适当的欧洲/ ...区域名称。 –