Date – datový typ (Visual Basic)
Obsahuje 64bitové hodnoty IEEE (8 bajtů), které představují kalendářní data od 1. ledna roku 0001 do 31. prosince roku 9999 a časy od 12:00:00 do 11:59:59.999999999. Každý přírůstek představuje 100 nanosekund uplynulých časů od 1. ledna roku 1 v gregoriánském kalendáři. Maximální hodnota představuje 100 nanosekund před začátkem 1. ledna roku 10000.
Poznámky
Date
Datový typ slouží k zahrnutí hodnot kalendářních dat, časových hodnot nebo hodnot data a času.
Výchozí hodnota Date
je 0:00:00 (půlnoc) 1. ledna 0001.
Aktuální datum a čas můžete získat z předmětu DateAndTime .
Požadavky na formát
Literál musíte uzavřít Date
do znaménka čísel (# #
). Je třeba zadat hodnotu data ve formátu M/d/rrrr, například #5/31/1993#
, nebo rrrr-MM-dd, například #1993-5-31#
. Lomítka můžete použít při zadávání prvního roku. Tento požadavek je nezávislý na nastavení formátu data a času vašeho počítače.
Důvodem tohoto omezení je, že význam kódu by se neměl měnit v závislosti na národním prostředí, ve kterém je vaše aplikace spuštěná. Předpokládejme, že pevně zakódujete Date
literál #3/4/1998#
a hodláte ho zakódovat na 4. března 1998. V národním prostředí, které používá mm/dd/yy, 3/4/1998 kompiluje podle plánu. Předpokládejme ale, že aplikaci nasadíte v mnoha zemích nebo oblastech. V národním prostředí, které používá dd/mm/yyyy, se váš pevně zakódovaný literál zkompiluje do 3. dubna 1998. V národním prostředí, které používá yyyy/mm/dd, by literál byl neplatný (duben 1998, 0003) a způsobil chybu kompilátoru.
Alternativní řešení
Pokud chcete převést Date
literál na formát národního prostředí nebo do vlastního formátu, zadejte do funkce literál Format , který určuje předdefinovaný nebo uživatelsky definovaný formát data. Následující příklad ukazuje to.
MsgBox("The formatted date is " & Format(#5/31/1993#, "dddd, d MMM yyyy"))
Alternativně můžete použít jeden z přetížených konstruktorů DateTime struktury k sestavení hodnoty data a času. Následující příklad vytvoří hodnotu představující 31. května 1993 v 12:14 odpoledne.
Dim dateInMay As New System.DateTime(1993, 5, 31, 12, 14, 0)
Formát hodiny
Hodnotu času můžete zadat ve formátu 12 hodin nebo 24 hodin, například #1:15:30 PM#
.#13:15:30#
Pokud však nezadáte minuty nebo sekundy, je nutné zadat dopožádku nebo odp.
Výchozí hodnoty data a času
Pokud do literálu data a času nezadáte datum, nastaví Visual Basic část data hodnoty na 1. ledna 0001. Pokud do literálu data a času nezadáte čas, nastaví Jazyk Visual Basic časovou část hodnoty na začátek dne, tedy půlnoc (0:00:00).
Převody typu
Pokud převedete Date
hodnotu na String
typ, Jazyk Visual Basic vykreslí datum podle krátkého formátu data určeného národním prostředím runtime a vykreslí čas podle formátu času (12hodinový nebo 24hodinový) určený národním prostředím runtime.
Tipy k programování
Co je potřeba vzít v úvahu. Pokud spolupracujete s komponentami, které nejsou napsané pro rozhraní .NET Framework, například pro objekty Automation nebo COM, mějte na paměti, že typy data a času v jiných prostředích nejsou kompatibilní s typem jazyka Visual Basic
Date
. Pokud předáte argument data a času této komponentě, deklarujete hoDate
jakoDouble
místo v novém kódu jazyka Visual Basic a použijte metody DateTime.FromOADate převodu a DateTime.ToOADate.Zadejte znaky.
Date
nemá žádný znak typu literálu ani znak typu identifikátoru. Kompilátor však považuje literály uzavřené do znaménka čísel (# #
) jakoDate
.Typ architektury. Odpovídající typ v rozhraní .NET Framework je System.DateTime struktura.
Příklad
Proměnná nebo konstanta datového Date
typu obsahuje datum i čas. Toto dokládá následující příklad.
Dim someDateAndTime As Date = #8/13/2002 12:14 PM#