DateFormat getTime返回错误的时间

问题描述 投票:0回答:1

我尝试从日期获取timeStamp。我的日期值为21.07.2020,并且我尝试这样获取时间戳

 DateFormat formatter = new SimpleDateFormat("dd.mm.yyyy");
        try {
            Date date = formatter.parse(expDate);
            long scannerTimeStemp = date.getTime() / 1000L;
            if (scannerTimeStemp > serverTimestampMillis) {
                isValidExpDate = true;
            } else
                isValidExpDate = false;

但是当我调试代码时,TimeStamp的值为1579550820。我正在使用在线转换器,此时间戳为2020年1月20日,星期一。谁能告诉我我做错了吗?

java android datetime simpledateformat
1个回答
1
投票

mm是分钟,而不是月份。您应该改用MM

顺便说一句,您不应使用DateSimpleDateFormat,因为它们已过时。您应该使用java.time包中的类。在您的情况下,请使用LocalDate:

LocalDate date = LocalDate.parse(expDate, "dd.MM.yyyy");

0
投票

您能否更改发送日期的格式

SimpleDateFormat("dd.mm.yyyy"); to SimpleDateFormat("yyyy-MM-dd");

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.