Java SimpleDateFormat - 输入和输出是不同的

时间:2012-04-23 02:59:16

标签: java date simpledateformat

我得到日期字符串 - “2012-04-19 20:51:06”。然后我通过SimpleDateFormat得到毫秒时间。

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    Date d=sdf.parse("2012-04-19 20:51:06");
    long milliTime=d.getTime()

然后milliTime是1334839866000L

然而,当我将milliTime转换为日期格式String时。结果是“2012-04-19 08:51:06”

    long time = 1334839866000L;
    Date date = new Date(time);

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

有什么问题?

1 个答案:

答案 0 :(得分:8)

尝试使用HH作为小时组件,而不是hh。