Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的对象到日期格式_Java_Date_Simpledateformat_Date Format - Fatal编程技术网

Java中的对象到日期格式

Java中的对象到日期格式,java,date,simpledateformat,date-format,Java,Date,Simpledateformat,Date Format,我对日期有一个很大的问题,我必须以正确的方式格式化日期。我的解决方案如下: ... //Read: 1935-05-12 00:00:00.0 Date dateOfBirth= (Date) arrayOfObject[3]; //Pattern: dd-MM-yyyy hh:mm:ss DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss"); //12-05-1935 12:00:00 (

我对日期有一个很大的问题,我必须以正确的方式格式化日期。我的解决方案如下:

...
//Read: 1935-05-12 00:00:00.0
Date dateOfBirth= (Date) arrayOfObject[3];

//Pattern: dd-MM-yyyy hh:mm:ss
DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");

//12-05-1935 12:00:00 (for me it's perfect but I need Date and no String)  
String strDate = dateFormat.format(dateOfBirth);  

//Read: Sun May 12 00:00:00 CET 1935
dateOfBirth= dateFormat.parse(strDate);

//Read: Sun May 12 00:00:00 CET 1935
rep.setDateOfBirth(dateOfBirth);
...

我需要一种类似于strDate的格式,因为我需要数据库的这种格式,但我需要的是日期而不是字符串,我不知道如何以正确的方式格式化我的日期字符串。

您可以将日期按原样存储在数据库中,然后在检索之后,您可以将其转换为DTO级别所需的任何格式。

我不确定您的要求。您已经有日期了。日期是一个瞬间。日期的表示形式可以是字符串。我建议您不要使用
SimpleDateFormat
date
。这些类设计得很糟糕,而且早已过时,其中前者尤其令人讨厌。而是使用来自的
LocalDateTime
DateTimeFormatter
。这是否回答了您的问题。是吗?因为您得到了
1935-05-12 00:00:00.0
,看起来您真的从数组中得到了
java.sql.Timestamp
对象。这是另一个设计拙劣、过时已久的类,
Date
的子类,并且是一个真正的黑客。请解释一下,当原始对象中的时间是00:00:00.0时,12:00:00怎么可能是完美的呢?事实上,如果你有一个数据库,那么你就可以。它回答了这个问题吗?怎么用?(不是你的选民)