将日期转换为字符串时出错

时间:2018-08-29 11:13:24

标签: java datetime timestamp long-integer date-parsing

        Date date = new Date();
        try {
            date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").parse(s);
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Timestamp timestamp=new Timestamp(date.getTime());
        id=Long.parseLong(timestamp.toString());

在执行上面的代码时,出现此错误:

java.lang.NumberFormatException: For input string: "2018-08-29 16:35:31.753"
    at 
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

现在怎么了?

1 个答案:

答案 0 :(得分:1)

当您尝试通过Timestamp.toString()获取long值时会发生错误,因为它返回了2018-08-29 16:35:31.753,这不是有效的long。

只需使用:

long id = timestamp.getTime();
相关问题