Java奇怪的日期转换异常

我看见佛 2016-12-25 09:29:56

private static Date getFormatTime(Date datetime, int addAays, int addMinute) {
Calendar d = Calendar.getInstance();
d.add(Calendar.DAY_OF_MONTH, addAays);
d.add(Calendar.MINUTE, addMinute);
String dtText = sd.format(d.getTime()) + " " + st.format(datetime.getTime());
try {
return sdf.parse(dtText);
} catch (Exception e) {
logger.error("日期转换出错."+dtText, e);
}
return null;
}

08:52:57,100 ERROR UserRecProb - 日期转换出错. 2016-12-25 00:00:00
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:453)
at java.lang.Long.parseLong(Long.java:483)
at java.text.DigitList.getLong(DigitList.java:194)
at java.text.DecimalFormat.parse(DecimalFormat.java:1316)
at java.text.SimpleDateFormat.subParse(SimpleDateFormat.java:1793)
at java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1455)
at java.text.DateFormat.parse(DateFormat.java:355)
at com.xfp.message.server.utils.UserRecProb.getFormatTime(UserRecProb.java:27)
at com.xfp.message.server.utils.UserRecProb.checkUserHavRecPorb(UserRecProb.java:53)


上面这段代码报错,但是2016-12-25 00:00:00并不是空字符串哇,还有我单独测试时是可以转换成功,不知道是什么原因呢?
...全文
197 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
rumlee 2016-12-25
  • 打赏
  • 举报
回复
将sdf的定义贴出来,大家才能知道有什么问题啊。 另外你将dtText打印出来看一样,和你要的是不是一致的。
邹邹wl 2016-12-25
  • 打赏
  • 举报
回复
1、 代码不完整 2、 debug一下,很容易就找出来了。这里的debug是指进源码里面debug

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧