> 백엔드 개발 > C++ > Json.Net을 사용하여 dd/MM/yyyy 날짜를 올바르게 역직렬화하려면 어떻게 해야 합니까?

Json.Net을 사용하여 dd/MM/yyyy 날짜를 올바르게 역직렬화하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-31 22:40:10
원래의
930명이 탐색했습니다.

How Can I Correctly Deserialize dd/MM/yyyy Dates with Json.Net?

Json.Net을 사용하여 dd/MM/yyyy 형식의 날짜 처리

dd/MM/yyyy 형식의 날짜가 포함된 JSON 데이터를 역직렬화할 때 Json.Net이 실수로 MM/dd/yyyy 형식으로 해석하세요. 이로 인해 C# 클래스의 날짜 값이 잘못될 수 있습니다.

이를 수정하기 위해 Json.Net은 IsoDateTimeConverter를 제공합니다. DateTimeFormat 속성을 지정하면 Json.Net이 날짜를 원하는 형식으로 구문 분석하도록 지시할 수 있습니다. 예는 다음과 같습니다.

MyObject obj = JsonConvert.DeserializeObject<MyObject>(jsonString, 
                   new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy" });
로그인 후 복사

예를 들어 이 구성을 사용하면 2013년 9월 12일은 9월 12일이 아닌 2013년 12월 9일로 올바르게 역직렬화됩니다. 2013.

시연:

class Program
{
    static void Main(string[] args)
    {
        string json = @"{ ""Date"" : ""09/12/2013"" }";

        MyObject obj = JsonConvert.DeserializeObject<MyObject>(json, 
            new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy" });

        DateTime date = obj.Date;
        Console.WriteLine("day = " + date.Day);
        Console.WriteLine("month = " + date.Month);
        Console.WriteLine("year = " + date.Year);
    }
}

class MyObject
{
    public DateTime Date { get; set; }
}
로그인 후 복사

출력:

day = 9
month = 12
year = 2013
로그인 후 복사

위 내용은 Json.Net을 사용하여 dd/MM/yyyy 날짜를 올바르게 역직렬화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿