在 java 中将日期格式化为特定格式的字符串时时间会发生变化
Time gets changed when formatting date to string in a particular format in java
我有一个值为 "Sat Nov 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”。这是怎么回事?我需要在 conversion.That 之后得到准确的时间,结果是“2015-11-14 00:00:00”。该怎么做?请帮我解决这个问题。
您应该使用 HH
而不是前面提到的 hh
here 例如:
SimpleDateFormat dtf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date=dtf.format(reDate);
我有一个值为 "Sat Nov 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”。这是怎么回事?我需要在 conversion.That 之后得到准确的时间,结果是“2015-11-14 00:00:00”。该怎么做?请帮我解决这个问题。
您应该使用 HH
而不是前面提到的 hh
here 例如:
SimpleDateFormat dtf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date=dtf.format(reDate);