Megosztás a következőn keresztül:


Dátum adattípus (Visual Basic)

IEEE 64 bites (8 bájtos) értékeket tartalmaz, amelyek a 0001. év január 1-től a 9999. december 31-ig terjedő dátumokat jelölik, és 12:00:00-tól (éjféltől) 11:59:59.999999999-ig terjedő időpontokat jelölnek. Minden növekmény 100 nanoszekundumnyi eltelt időt jelöl az 1. év január 1-jei kezdete óta a Gergely-naptárban. A maximális érték 100 nanoszekundumot jelöl az 10000.

Megjegyzések

Az adattípussal Date dátumértékeket, időértékeket, dátum- és időértékeket tartalmazhat.

Az alapértelmezett érték Date 0:00:00 (éjfél) 0001. január 1-jén.

Az aktuális dátumot és időt lekérheti az DateAndTime osztályból.

Formázási követelmények

A számjelek Date (# #) közé literálist kell befoglalnia. A dátumértéket M/d/yyyyy formátumban kell megadnia, például #5/31/1993#yyyy-MM-dd formátumban.#1993-5-31# Az év első megadásakor perjeleket is használhat. Ez a követelmény független a területi beállításoktól és a számítógép dátum- és időformátum-beállításaitól.

Ennek a korlátozásnak az az oka, hogy a kód jelentése soha nem változik attól függően, hogy melyik területi beállításban fut az alkalmazás. Tegyük fel, hogy Date #3/4/1998# 1998. Az mm/dd/yyy függvényt használó területi beállításokban az 1998. 03. 4. Tegyük fel azonban, hogy az alkalmazást számos országban vagy régióban telepíti. A dd/mm/yyyyy-t használó területi beállításokban a rögzített literál 1998. április 3-ra lesz lefordítva. A yyyy/mm/dd értékeket használó területi beállításokban a literál érvénytelen lenne (1998. április, 0003.), és fordítóhibát okozna.

Kerülő megoldások

Ha konstanst Date szeretne átalakítani a területi beállítások formátumára vagy egyéni formátumra, adja meg a Format függvény literálját, és adjon meg előre definiált vagy felhasználó által megadott dátumformátumot. Az alábbi példa ezt mutatja be.

MsgBox("The formatted date is " & Format(#5/31/1993#, "dddd, d MMM yyyy"))

Másik lehetőségként használhatja a szerkezet egyik túlterhelt konstruktorát DateTime egy dátum- és időérték összeállításához. Az alábbi példa egy értéket hoz létre, amely 1993. május 31-én délután 12:14-kor jelenik meg.

Dim dateInMay As New System.DateTime(1993, 5, 31, 12, 14, 0)

Óra formátuma

Az időértéket 12 órás vagy 24 órás formátumban adhatja meg, például #1:15:30 PM# vagy #13:15:30#. Ha azonban nem adja meg sem a perceket, sem a másodperceket, meg kell adnia az AM vagy a PM értéket.

Dátum és idő alapértelmezései

Ha nem tartalmaz dátumot egy dátum/idő literálban, a Visual Basic az érték dátumrészét 0001. Ha nem tartalmaz időpontot egy dátum-/időkonstansban, a Visual Basic az érték időrészét a nap elejére, azaz éjfélre állítja (0:00:00).

Típuskonvertálások

Ha egy értéket típussá String alakít átDate, a Visual Basic a futtatási idő területi beállítása által megadott rövid dátumformátum szerint jeleníti meg a dátumot, és a futási idő területi beállításában megadott időformátum szerint jeleníti meg az időt (akár 12 órás, akár 24 órás).

Programozási tippek

  • Interop szempontok. Ha a .NET-keretrendszer nem írt összetevőkkel (például Automation- vagy COM-objektumokkal) kommunikál, vegye figyelembe, hogy más környezetekben a dátum-idő típusúak nem kompatibilisek a Visual Basic Date típussal. Ha dátum/idő argumentumot ad át egy ilyen összetevőnek, deklarálja azt Double az új Visual Basic-kód helyett Date , és használja a konvertálási módszereket DateTime.FromOADate és DateTime.ToOADatea .

  • Írja be a karaktereket.Date nem rendelkezik literális típuskaraktere vagy azonosítótípus-karaktere. A fordító azonban a számjelek (# #) Dateközé zárt literálokat a következőképpen kezeli.

  • Keretrendszer típusa. A .NET-keretrendszer megfelelő típusa a System.DateTime struktúra.

Példa

Az adattípus változója vagy állandója Date a dátumot és az időt is tartalmazza. Az alábbi példa ezt szemlélteti.

Dim someDateAndTime As Date = #8/13/2002 12:14 PM#

Lásd még