java (timestamp)时间戳转换string 去掉后面的.0

在数据库中使用timestamp类型的时候,如果直接得到时间插入数据库,会抛错。因为使用`SimpleDateFormat`格式化后,最后面会带有小数
例如:

2018-05-17 17:37:00.911
2018-05-17 17:37:00

所以不能直接插入,需要把后面的小数切掉。转换成timestamp
ps:需要引用sql的Timestamp

import java.sql.Timestamp;
import java.util.Date;

public class test {
    public static void main(String[] args) {
        Date data=  new Date();
        System.out.println(data);
        Timestamp timestamp=new Timestamp(new Date().getTime());
        System.out.println(timestamp.toString());
        String timeStr=timestamp
                .toString()
                .substring(0, timestamp.toString().indexOf("."));
        System.out.println(timeStr);
    }
}

运行之后可以看到,我们想要的结果已经出来了

Thu May 17 17:37:00 CST 2018
2018-05-17 17:37:00.911
2018-05-17 17:37:00

这里解释一下substring的用法:

substring(x)是从字符串的的第x个字符截取
substring(x,y)是从x到y前的位置停止,即截取[x,y),包含x,但不包含y

所以上面使用的方法就是,从0开始直到小数点的位置截止

猜你喜欢

转载自blog.csdn.net/stormdony/article/details/80353818