2014-09-13 4 views
2

유닉스 타임 스탬프를 VB.NET DateTime으로 변환하고 싶습니다.유닉스 시간을 DateTime으로 변환

나는

Public Function UnixToDateTime(ByVal strUnixTime As String) As DateTime 

    Dim nTimestamp As Double = strUnixTime 
    Dim nDateTime As System.DateTime = New System.DateTime(1970, 1, 1, 0, 0, 0, 0) 
    nDateTime.AddSeconds(nTimestamp) 

    Return nDateTime 

End Function 

을 시도하지만 먹이시는

strUnixTime = "1401093810" 

나는 반환 값 내가 잘못 뭐하는 거지

nDateTime = #1/1/1970# 

를 얻을?

nDateTime.AddSeconds(nTimestamp) 

하지nDateTime을 수정 않습니다 당신에게 코드의

답변

7

이 줄을 감사드립니다. 그것은 한 줄에 a + 3을 쓰는 것과 같습니다. a은 수정되지 않습니다.

그러나 은 증가 된 값을 포함하는 새 DateTime 개체을 반환합니다. 그럼, 당신이 실제로 쓰고 싶다 것은 :

nDateTime = nDateTime.AddSeconds(nTimestamp) 

PS : 당신의 코드가 Option Strict On를 사용하지 않는 것 같습니다. Option Strict을 활성화하고 암시 적 변환 대신 명시 적으로 사용하는 것이 좋습니다.

+0

감사합니다. 이제 날짜를 얻었지만 어떻게 DateTime을 얻을 수 있는지 알고 있습니까? 현재 시간이 없습니다 : nDateTime = # 4/5/2006 # – tmighty

+0

누락되지 않았습니다! DateTime/Date 변수 * always *에는 시간 구성 요소가 들어 있습니다. 그것은 단지 * 디버거가 '00 : 00'인 경우 시간 구성 요소를 표시하지 않을 수도 있습니다. – Heinzi

+0

오, 알겠습니다. 고맙습니다! – tmighty

관련 문제