Date — Typ danych (Visual Basic)
Przechowuje wartości IEEE 64-bitowe (8-bajtowe), które reprezentują daty od 1 stycznia roku 0001 do 31 grudnia roku 9999 i razy od 12:00:00 (północ) do 11:59:59.999999 PM. Każdy przyrost reprezentuje 100 nanosekund czasu, który upłynął od początku 1 stycznia roku 1 w kalendarzu gregoriańskim. Wartość maksymalna reprezentuje 100 nanosekund przed rozpoczęciem 1 stycznia roku 10000.
Uwagi
Date
Użyj typu danych, aby zawierać wartości daty, wartości godziny lub wartości daty i godziny.
Wartość domyślna to Date
0:00:00 (północ) 1 stycznia 0001.
Bieżącą datę i godzinę można pobrać z DateAndTime klasy .
Wymagania dotyczące formatu
Należy ująć Date
literał w znaki liczbowe (# #
). Należy określić wartość daty w formacie M/d/rrrr, na przykład , lub rrrr-MM-dd, na przykład #5/31/1993#
#1993-5-31#
. Podczas określania roku można użyć ukośników. To wymaganie jest niezależne od ustawień regionalnych i ustawień formatu daty i godziny komputera.
Przyczyną tego ograniczenia jest to, że znaczenie kodu nigdy nie powinno się zmieniać w zależności od ustawień regionalnych, w których aplikacja jest uruchomiona. Załóżmy, że kodujesz literał Date
#3/4/1998#
i zamierzasz go oznaczać 4 marca 1998 r. W ustawieniach regionalnych, które używają mm/dd/rrrr, 3/4/1998 kompiluje się zgodnie z oczekiwaniami. Załóżmy jednak, że wdrażasz aplikację w wielu krajach/regionach. W ustawieniach regionalnych, które używają dd/mm/rrrr, twój zakodowany literał skompiluje się do 3 kwietnia 1998 roku. W ustawieniach regionalnych, które używają rrrr/mm/dd, literał będzie nieprawidłowy (kwiecień 1998, 0003) i powodować błąd kompilatora.
Obejścia
Aby przekonwertować Date
literał na format ustawień regionalnych lub format niestandardowy, podaj literał funkcji Format , określając wstępnie zdefiniowany lub zdefiniowany przez użytkownika format daty. W poniższym przykładzie pokazano to.
MsgBox("The formatted date is " & Format(#5/31/1993#, "dddd, d MMM yyyy"))
Alternatywnie można użyć jednego z przeciążonych konstruktorów DateTime struktury, aby zebrać wartość daty i godziny. Poniższy przykład tworzy wartość reprezentującą 31 maja 1993 r. o godzinie 12:14 w godzinach popołudniowych.
Dim dateInMay As New System.DateTime(1993, 5, 31, 12, 14, 0)
Format godziny
Można określić wartość godziny w formacie 12-godzinnym lub 24-godzinnym, na przykład #1:15:30 PM#
lub #13:15:30#
. Jeśli jednak nie określisz minut lub sekund, musisz określić am lub PM.
Wartości domyślne daty i godziny
Jeśli nie dołączysz daty do literału daty/godziny, program Visual Basic ustawia część daty wartości na 1 stycznia 0001 roku. Jeśli nie dołączysz godziny do literału daty/godziny, program Visual Basic ustawia część godziny wartości na początek dnia, czyli północ (0:00:00).
Konwersje typu
Jeśli przekonwertujesz Date
wartość na String
typ, program Visual Basic renderuje datę zgodnie z formatem daty krótkiej określonym przez ustawienia regionalne czasu wykonywania i renderuje czas zgodnie z formatem czasu (12-godzinnym lub 24-godzinnym) określonym przez ustawienia regionalne czasu wykonywania.
porady dotyczące programowania
Zagadnienia dotyczące międzyoperacyjności. Jeśli łączysz się ze składnikami, które nie są napisane dla programu .NET Framework, na przykład dla obiektów Automation lub COM, pamiętaj, że typy daty/godziny w innych środowiskach nie są zgodne z typem Języka Visual Basic
Date
. Jeśli przekazujesz argument daty/godziny do takiego składnika, zadeklaruj go jakoDouble
zamiastDate
w nowym kodzie Języka Visual Basic i użyj metod DateTime.FromOADate konwersji i DateTime.ToOADate.Wpisz znaki.
Date
nie ma znaku typu literału ani typu identyfikatora. Jednak kompilator traktuje literały ujęte w znaki liczbowe (# #
) jakoDate
.Typ struktury. Odpowiedni typ w programie .NET Framework jest strukturą System.DateTime .
Przykład
Zmienna lub stała Date
typu danych zawiera zarówno datę, jak i godzinę. Ilustruje to poniższy przykład.
Dim someDateAndTime As Date = #8/13/2002 12:14 PM#