gpt4 book ai didi

java - 将字符串日期转换为日期对象时值错误

转载 作者:行者123 更新时间:2023-12-02 06:43:49 25 4
gpt4 key购买 nike

当我转换字符串日期如“18/09/13,02:01:51”时使用此方法:

public static Date stringToDateFormat(String dateString) {
Date date = null;
try {
date = new SimpleDateFormat("dd/MM/yy,hh:mm:ss").parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}

当我保存此日期对象并将其存储在 PostgreSQL 数据库中时,我失去了时间2013-09-18 00:00:00

这里是数据库插入代码”

String query = "INSERT INTO My_Table(my_date) VALUES (?)";

Date date = stringToDateFormat("18/09/13,02:01:51");

preparedStatement = connection.prepareStatement(query);
preparedStatement.setDate(1, new java.sql.Date(date.getTime()));
preparedStatement.executeUpdate();

是编码问题还是数据库配置问题?

谢谢。

最佳答案

您的日期字符串未指定毫秒,并且正在四舍五入。

18/09/13,02:01:51 == 1379458917000

18/09/13,02:01:51.590 == 1379458917590

更新:

捕获 MS 的格式字符串为:dd/MM/yy,hh:mm:ss.SSS

关于java - 将字符串日期转换为日期对象时值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18861342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com