Jak przekonwertować istniejącą datę i godzinę na czas UTC bez zmiany czasu rzeczywistego.
Przykład:
DateTime dateTime = GetSomeDateTime(); // dateTime here is 3pm
dateTime.ToUtcDateTime() // datetime should still be 3pm
Jak przekonwertować istniejącą datę i godzinę na czas UTC bez zmiany czasu rzeczywistego.
Przykład:
DateTime dateTime = GetSomeDateTime(); // dateTime here is 3pm
dateTime.ToUtcDateTime() // datetime should still be 3pm
Odpowiedzi:
Użyj DateTime.SpecifyKind
metody statycznej.
Tworzy nowy obiekt DateTime, który ma taką samą liczbę taktów jak określony DateTime, ale jest wyznaczony jako czas lokalny, uniwersalny czas koordynowany (UTC) lub żaden z nich, zgodnie z określoną wartością DateTimeKind.
Przykład:
DateTime dateTime = DateTime.Now;
DateTime other = DateTime.SpecifyKind(dateTime, DateTimeKind.Utc);
Console.WriteLine(dateTime + " " + dateTime.Kind); // 6/1/2011 4:14:54 PM Local
Console.WriteLine(other + " " + other.Kind); // 6/1/2011 4:14:54 PM Utc
Możesz to również zrobić w ten sposób:
DateTime utcDateTime = new DateTime(dateTime.Year, dateTime.Month, dateTime.Day, dateTime.Hour, dateTime.Minute, dateTime.Second).ToUniversalTime();
new DateTime(dateTime.Year, dateTime.Month, dateTime.dateTimeay, dateTime.Hour, dateTime.Minute, dateTime.Second).ToUniversalTime().ToString()
vs DateTime.SpecifyKind(dateTime, DateTimeKind.Utc).ToString()
Zobaczysz, że uzyskasz różne wyniki.
Użyj DateTime.ToUniversalTime
metody.
PST
wartość?