我有一个字符串this.Platform().App(${mygroupename}).Install()
,这是一个字符串,我正在尝试将其转换为startTimestamp
,如下所示。
epoch time
但是,我收到以下异常
java.lang.NumberFormatException:对于输入字符串:" 2017-10-19 16:18:03.779"
答案 0 :(得分:3)
由于你无法将String转换为Long我建议将字符串转换为日期然后转换为纪元
String str = YOUR STRING;
SimpleDateFormat df = new SimpleDateFormat("YOUR String Date PATTERN");
Date date = df.parse(str);
long epoch = date.getTime();
System.out.println(epoch);
答案 1 :(得分:3)
为了得到时间,你需要抛出type
,这可以保持日/年/小时......,你需要parse
你的String
,然后获得{ {1}}:
time
:LocalDatetime, ZonedDateTime
ZonedDateTime ldate = LocalDateTime.parse(str, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"))
.atZone(ZoneId.of("Europe/Paris"));
long time = ldate.toInstant().toEpochMilli();
System.out.println(time);
,但需要使用Date
ParseException
两者都会打印String str = "2017-10-19 16:18:03.779";
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date date = df.parse(str);
long epoch = date.getTime();
System.out.println(epoch);