2

在文档中date.toString以以下格式写入返回日期:

dec mon dd hh:mm:ss zzz yyyy

所以我打印我的人的出生日期:

logger.error(person.getDateOfBirth().toString() + "dddddddddddddddd");

但它看起来不同:

- 1955-04-14 00:00:00.0dddddddddddddddd

为什么 ?

更新:

我这样设置日期:

            Calendar calendar = Calendar.getInstance();
            calendar.set(1955, 3, 14);
            calendar.getTime()

我期待文档中所写格式的日期

4

3 回答 3

3

确定,类型

person.getDateOfBirth()

java.util.Date

通过查看输出,我猜它的java.sql.Timestamp

于 2013-05-17T07:48:07.750 回答
0

我得到的http://ideone.com/aspxEF符合预期

Thu Apr 14 09:04:33 GMT 1955

如果您按照建议使用代码,您应该在那里看到当前时间,而不是午夜。

于 2013-05-17T07:38:06.633 回答
0

日期到字符串的转换

根据您的问题,您想将日期转换为字符串

person.getDateOfBirth() 是从代码中获取的对象

我不熟悉代码片段 person.getDateOfBirth() 的返回值,但如果它的 java.util.date 或 java.sql.date 两者都可以使用

String dob=String.valueOf(person.getDateOfBirth());

而不是 toString() 方法。请从 db 中检索日期为

java.sql.date dob= rs.getDate();
or
java.util.date dob= rs.getDate();

根据您想要的格式

于 2013-05-17T08:12:13.697 回答