2016-09-30 2 views
0

내가 서버에서이 시간이 : 1475245457452 날짜와 시간을이를 위해입니다 2016년 9월 30일이밀리 초 날짜를 DateTime으로 변환하는 방법은 무엇입니까?

16시 24분 17초는 어떻게 정확한 날짜 및 시간에 델파이에서이 1,475,245,457,452을 변환 할 수 있습니까?

+0

'DateUtils' 단위를 확인 했습니까? –

+0

귀하의 버전을 추측하여 질문에 다시 태그를 답니다. XE10은 없습니다. 내 추측은 베를린이지만, 어떤면에서도 차이를 만들지 않을 것입니다. –

+2

당신이 제공 한 값이 실제로는 (유닉스 시대부터) 밀리 초가 아닌 * milli * 초가되도록 헤더를 수정했습니다. –

답변

6

당신은 말하지 않았지만,이 양은 실제로는 유닉스 시대에서 측정 된 밀리 초라고 추측 할 수 있습니다. 그래서 System.DateUtils 장치에서 UnixToDateTime를 사용하여 변환 :

{$APPTYPE CONSOLE} 

uses 
    System.SysUtils, 
    System.DateUtils; 

begin 
    Writeln(DateTimeToStr(UnixToDateTime(1475245457452 div 1000))); 
end. 

내가 UnixToDateTime 초보다는 밀리 초 단위로 시간을 예상하기 때문에 초로 변환 1000로 나눈했다. 시간의 밀리 초 부분을 유지하려면 나머지 시간으로 날짜 시간 값을 쉽게 늘릴 수 있습니다.

시간은 항상 일부 단위 시스템에서 측정되며 일부 원점 또는 에포크와 관련되어 있음을 강조하는 것이 중요합니다. 가치를 아는 것만으로는 충분하지 않지만, 당신은 단위와 시대를 모두 알아야합니다. 그렇습니다.이 값을 추측하기는 쉽지만 종종 시간 값을 생성하는 소프트웨어 사양을 읽으면 값이 무엇인지 명확히 알 수 있습니다.

+0

고마워요! 이것은 술이다. – Pascal

+0

@ Pascal 이것이 올바른 해결책 인 경우 대답을 올바른 것으로 표시하십시오. –