在java中以特定格式将日期格式化为字符串时,时间会发生变化

时间:2016-01-09 08:47:40

标签: java date simpledateformat

我的日期值为“星期六11月14日00:00:00 GMT + 05:30 2015”。我需要将此变量转换为字符串日期,格式为“yyyy-MM-dd hh:mm:ss” 。为此,我使用了以下代码,

SimpleDateFormat dtf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String date=dtf.format(reDate);

其中reDate的值为“Sat Nov 14 00:00:00 GMT + 05:30 2015”。但转换后我得到的值为“2015-11-14 12:00:00”。时间“00 :00:00“变为”12:00:00“。怎么回事?我需要在转换后获得确切的时间。这就是“2015-11-14 00:00:00”的结果。怎么做?请帮我解决这个问题。

1 个答案:

答案 0 :(得分:3)

您应该使用HH代替hh提及here,如:{/ p>

SimpleDateFormat dtf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date=dtf.format(reDate);