有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何将日期格式的字符串时间戳转换为日期?

我需要将当前时间戳和当前减去1分钟的时间戳转换为给定的格式。我能够转换所需的格式。但它以字符串的形式返回

我需要格式化输出为日期而不是字符串

public static void main(String[] args) throws ParseException
{
    SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:00");
    long now = System.currentTimeMillis();
    String toTimeStamp = dateFormatter.format(now);
    long nowMinus1Minutes = now - TimeUnit.MINUTES.toMillis(1);
    String fromTimeStamp = dateFormatter.format(nowMinus1Minutes);
    System.out.println(fromTimeStamp);
    System.out.println(toTimeStamp);

    // Tried with parse
    Date fromDate = dateFormatter.parse(fromTimeStamp);
    Date toDate = dateFormatter.parse(toTimeStamp);

    System.out.println(fromDate);
    System.out.println(toDate);

}

Output:(String)

2020-07-24 12:13:00 
2020-07-24 12:12:00

Output: Pose Parsed the string as Date

Fri Jul 24 12:16:00 IST 2020
Fri Jul 24 12:17:00 IST 2020

预期输出:

2020-07-24 12:13:00 (As Date Object)
2020-07-24 12:12:00 (As Date Object)

共 (2) 个答案

  1. # 1 楼答案

    不可能。最近才明白。关闭这个

  2. # 2 楼答案

    如果您需要两个日期对象,可以这样做:

        OffsetDateTime offsetDateTime1 = OffsetDateTime.now();
        OffsetDateTime offsetDateTime2 = offsetDateTime1.minusMinutes(1);
    
        System.out.println(Date.from(offsetDateTime1.toInstant()));
        System.out.println(Date.from(offsetDateTime2.toInstant()));
    

    如果需要以其他格式打印时间戳,可以在Date-对象上使用SimpleDateFormat