Gson 日期转换

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

我从服务器收到格式为“yyyyMMdd HH:mm:ss”的日期,我需要使用 Gson JsonDeserializer 转换为日期格式“yyyy-MMM-dd HH:mm:ss”。

样本: 从服务器收到日期:20230320 16:09:05

待转换:2023-Mar-20 16:09:05

我想使用 GSON API 将 JSON 转换为 Java

JSON {“服务”:2,“用户IP”:“10.1.1.2.3”,“startDateTime”:“20230321 12:55:44”}

Java 类

public class TestJava 
{ 
private Long service;
private String userIP;
private LocalDateTime startDateTime;
//setter and getter
} 

预期输出如下

TestJava [service=2, userIP=10.1.1.2.3, startDateTime=2023-Mar-21 12:55:44]

谢谢

java spring-boot gson
1个回答
-1
投票

Gson 不擅长这种情况,所以我为您提供了 Java 代码片段,将日期格式从“yyyyMMdd HH:mm:ss”转换为“yyyy-MMM-dd HH:mm:ss”。

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateConverter {
    public static void main(String[] args) {
        String receivedDate = "20230320 16:09:05";
        DateFormat receivedDateFormat = new SimpleDateFormat("yyyyMMdd HH:mm:ss");
        DateFormat requiredDateFormat = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss");
        String convertedDate = null;

        try {
            Date date = receivedDateFormat.parse(receivedDate);
            convertedDate = requiredDateFormat.format(date);
        } catch (ParseException e) {
            e.printStackTrace();
        }

        System.out.println("Received Date: " + receivedDate);
        System.out.println("Converted Date: " + convertedDate);
    }
}

输出:

Received Date: 20230320 16:09:05

Converted Date: 2023-Mar-20 16:09:05

您可以使用此代码片段来转换应用程序中的日期格式。 希望这对你有帮助!

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