2012-01-15 43 views
0

任何人都可以告诉我如何将日期转换为java中的时代。 例如2011-05-01 13:12:20 IST或2011-05-01 14:11:10太平洋标准时间到时代。 我能够使用2011-05-01 13:12:20格式转换,但是当我使用时区时,我没有得到正确的结果。日期到时代转换

+2

请显示您尝试过的代码,结果以及您的预期。 – Mat 2012-01-15 09:49:16

回答

1

构建一个SimpleDateFormat,其字符串模式与您的日期格式匹配。 “日期和时间”部分和“示例”部分应该为您提供如何构建日期格式的足够帮助。字符串

然后,只需执行以下操作即可获取日期(使用适当的日期格式字符串)。

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); 

Date date = sdf.parse("15/01/2012"); 
0

java.time

使用java.time类。

String input = "2011-05-01 13:12:20".replace(" " , "T"); 
LocalDateTime ldt = LocalDateTime.parse(input); 
ZonedDateTime zdt = ldt.atZone(ZoneId.of("Asia/Kolkata")); 

如果“历元”,则意味着整个秒或从1970年第一时刻的在UTC(通常被称为Unix Time)的epoch reference date毫秒的计数,然后通过提取的Instant对象询问ZonedDateTime对象。

long wholeSecondsSinceEpoch = zdt.toInstant().getEpochSecond(); 
long millisecondsSinceEpoch = zdt.toInstant().toEpochMilli();