2014-12-30 3 views
1

GroupWise 2014 Rest API를 사용하고 있는데 날짜 형식을 파싱하는 데 문제가 있습니다. 사용자를 가져올 때GroupWise 2014 날짜 형식 날짜 시간

당신은 "timeCreated"로 JSON 개체가 나타납니다 1419951016000,

하지만 날짜가 그 어떤 형식을 알아낼 수 없습니다.

나는 UTC에서 1970 년 1 월 1 일 이후 2014-12-30 15:50

+0

API 문서를 참조 했습니까? – Plutonix

답변

1

밀리 초 단위로 unix time처럼 보이는시기에해야

DateTime.Parse 
DateTime.FromFileTime 
DateTime.FromFileTimeUtc 

1419951016000을 시도했습니다. 현재 유닉스 시간 초 단위shown here as 1419964283입니다.

DateTime에서 유닉스 시간으로 변환하려면 여기를 참조하십시오 : How to convert UNIX timestamp to DateTime and vice versa?. 해당 코드는 유닉스 시간 초 단위로 작동합니다.; 밀리 초 유닉스 시간에 대해 다음 작품은 long로 표현 :이 코드

public static class UnixTimeHelper 
{ 
    const long MillisecondsToTicks = 10000; 
    static readonly DateTime utcEpochStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); 

    static DateTime UtcEpochStart { get { return utcEpochStart; }} 

    public static DateTime ToDateTime(long unixTimeInMs, DateTimeKind kind) 
    { 
     var dateTime = UtcEpochStart + new TimeSpan(MillisecondsToTicks * unixTimeInMs); 
     if (kind == DateTimeKind.Local) 
      dateTime = dateTime.ToLocalTime(); 
     return dateTime; 
    } 

    public static long ToUnixTimeInMs(DateTime dateTime) 
    { 
     if (dateTime.Kind == DateTimeKind.Local) 
      dateTime = dateTime.ToUniversalTime(); 
     var span = dateTime - UtcEpochStart; 
     return (long)(span.Ticks/MillisecondsToTicks); 
    } 
} 

. UnixTimeHelper.ToDateTime(1419951016000, DateTimeKind.Utc).ToString()은 '2012 년 12 월 30 일 오후 2시 50 분 16 초 '값을 제공합니다. 원하는 값인 "2014-12-30 15:50"은 UTC 또는 현지 시간입니까?

당신이 당신의 JSON 직렬화 Json.NET을 사용하는 경우, 당신은 여기에 지침을 사용하여 DateTime 속성에서 자동으로 변환을 수행하는 사용자 정의 JsonConverter을 작성할 수 있습니다 Writing a custom Json.NET DateTime Converter. 이 코드는 유닉스 시간에도 몇 초 안에 작동하기 때문에 조정해야한다.

은 (마지막에 Plutonix의 제안을 회지지 한 번 확인 설명서를. 특히 당신은 아마 UTC입니다. 문서는 시간이 반환되는 시간대에 대해 말씀을 읽을 필요가 있지만, 확인하기 위해 지불한다.)

빠른 검색하려면 online doc이 아주 나쁜 보인다 후 업데이트

하지만 this page 만든다 언급

만료 시간

선택 사항. 명시 적 만료 컷오프 시간을 사용하십시오. 시간은 Java long time으로 지정됩니다.

java.util.Datelong으로 "즉, 1970 년 1 월 1 일 00:00:00 GMT"시대 "로 알려진 표준 기본 시간 이후 지정된 밀리 초"를 나타냅니다.