今天在写代码的时候,在将字符串转换成时间的时候,出现了java.text.ParseException: Unparseable date: "2017-1-1 00:00:00" 这样的问题
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date start = df.parse(startTime);
Date stop = df.parse(stopTime);
long timeSpan = stop.getTime() - start.getTime();
long hours = timeSpan / (3600 * 1000);
我通过上面这些代码来计算传入的连个时间的时间差,可以在运行的时候却出现上面那个问题,百度了一下,在进行时间转换的时候,字符串的长度要一一对应,
也就是说和这个“yyyy-MM-dd“要长度一致,比如2013-1-1要转换成时间的话需要写成”2013-01-01“;
然后就可以转换成功了!
不要再用DateForamt或者Calendar来格式化时间了,推荐使用jdk8提供的localdatetime
本文介绍了在使用Java进行时间解析时遇到的ParseException问题,并提供了解决方案,即确保字符串日期格式与SimpleDateFormat指定的模式完全匹配,同时推荐使用JDK 8中的LocalDateTime替代传统的时间处理方式。
8783

被折叠的 条评论
为什么被折叠?



