Tipe data Date


Pada Visual Basic variabel date disimpan sebagai integer IEEE 64-bit (8-byte) yang mewakili tanggal dengan jangkauan dari 1 Januari tahun 1 sampai dengan 31 Desember tahun 9999, dan waktu dari 0:00:00 (tengah malam) sampai 23:59:59.


Nilai tanggal harus diapit diantara tanda angka (#) dan diformat dalam M/d/yyyy, sebagai contoh #5/31/1993#.
Anda dapat memberikan nilai awal pada variabel tipe Date dengan penulisan sebagai berikut :
Dim Tanggal As Date = New Date(2005, 5, 30, 8, 29, 59, 900)
Dimana akan memberikan nilai Tanggal 30 Mei 2005 Pukul 8:29:59.900 ke variabel Tanggal.
Member pada Class Date
public propertyDate
Mengambil komponen tanggal dari instance
public propertyTimeOfDay
Mengambil komponen waktu dari instance
public propertyDay
Mengambil nomor hari (1-31) dalam bulan dari instance
public propertyMonth
Mengambil komponen bulan (1-12) dari instance
public propertyYear
Mengambil komponen tahun dari instance
public propertyHour
Mengambil komponen jam (0-23) dari instance
public propertyMinute
Mengambil komponen menit (0-59) dari instance
public propertySecond
Mengambil komponen detik (0-59) dari instance
public propertyMillisecond
Mengambil komponen mili detik (0-999) dari instance
public propertyDayOfWeek
Mengambil nomor hari (0-6) dalam minggu dari instance
public propertyDayOfYear
Mengambil nomor hari (1-366) dalam tahun dari instance
public propertyTicks
Mengambil jumlah ticks dari instance
public propertystatic (Shared in Visual Basic)Now
Mendapatkan tanggal dan waktu komputer
public propertystatic (Shared in Visual Basic)Today
Mendapatkan mendapatkan tanggal komputer
public propertystatic (Shared in Visual Basic)UtcNow
Mendapatkan tanggal dan wkatu komputer yang telah diknversi menjadi coordinated universal time (UTC).
Contoh :
Option Explicit On
Imports System

Public Module ModDate
  Sub Main()
      Dim Tanggal As Date = New Date(2005,5,30,8,29,40,900)
      Console.WriteLine(Tanggal.Date())         '30-05-2005
      Console.WriteLine(Tanggal.TimeOfDay())    '08:29:40.9000000
      Console.WriteLine(Tanggal.Day())          '30
      Console.WriteLine(Tanggal.Month())        '5
      Console.WriteLine(Tanggal.Year())         '2005
      Console.WriteLine(Tanggal.Hour())         '8
      Console.WriteLine(Tanggal.Minute())       '29
      Console.WriteLine(Tanggal.Second())       '40
      Console.WriteLine(Tanggal.MilliSecond())  '900
      Console.WriteLine(Tanggal.DayOfWeek())    '1
      Console.WriteLine(Tanggal.DayOfYear())    '150
      Console.WriteLine(Tanggal.Ticks())        '632530385809000000
      Console.WriteLine(DateTime.Now())         '30-05-2005 08:30:29 PM      Console.WriteLine(Tanggal.Today())        '30-05-2005
      Console.WriteLine(Tanggal.UTCNow())       '30-05-2005 1:37:20 PM
  End Sub
End Module
Visual Basic menyediakan berbagai fungsi bantu yang merupakan member dari namespace Microsoft.VisualBasic
public methodAddDays
Menambah sejumlah hari (+/-) ke instance.
public methodAddMonths
Menambah sejumlah bulan (+/-) ke instance
public methodAddYears
Menambah sejumlah tahun (+/-) ke instance
public methodAddHours
Menambah sejumlah jam (+/-) ke instanace
public methodAddMinutes
Menambah sejumkah menit (+/-) ke instance
public methodAddSeconds
Menambah sejumlah detik (+/-) ke instance
public methodAddMilliseconds
Menambah sejumlah millidetik (+/-) ke instance

Option Explicit On
Imports System

Public Module ModDate
  Sub Main()
      Dim Tanggal As Date = New Date(2005,5,30,8,29,40,900)
      Console.WriteLine(Tanggal.AddDays(-10))   '20-5-2005 8:29:40.900
  End Sub
End Module

public methodstatic (Shared in Visual Basic)Parse
Mengkonversi string dalam bentuk tanggal dan waktu ke DateTime.

Option Explicit On
Imports System

Public Module ModDate
  Sub Main()
      Dim Str As String = "30-5-2005 08:30:50.900"
      Dim Tanggal As Date
      Tanggal = DateTime.Parse(Str)
      Console.WriteLine(Tanggal)
  End Sub
End Module


public methodstatic (Shared in Visual Basic)Compare
Membandingkan dua instance dari DateTime dam mengembalikan ( < 0 jika tanggal1 < tanggal2, = 0 jika tanggal1 = tanggal2, dan > 0 jika tanggal1 > tanggal2)
public methodstatic (Shared in Visual Basic)DaysInMonth
Mengembalikan jumlah hari dalam tahun dan bulan tertentu.
public methodstatic (Shared in Visual Basic)IsLeapYear
Mengembalikan indikasi apakah tahun yang diberikan kabisat

Option Explicit On
Imports System

Public Module ModDate
  Sub Main()
      Dim Tanggal1 As Date = New Date(2005,5,30)
      Dim Tanggal2 As Date = New Date(2005,5,31)
      Console.WriteLine(DateTime.Compare(Tanggal1,Tanggal2))   '-1
      Console.WriteLine(DateTime.DaysInMonth(2005,5))          '31
      Console.WriteLine(DateTime.IsLeapYear(2005))             'False
  End Sub
End Module

public methodSubtract
Menghasilkan selisih antara suatu datetime dengan instance

Option Explicit On
Imports System

Public Module ModDate
  Sub Main()
      Dim Tanggal1 As Date = New Date(2005,5,30)
      Dim Tanggal2 As Date = New Date(2005,5,31)
      Console.WriteLine(Tanggal1.Subtract(Tanggal2))       '-1 00:00:00
  End Sub
End Module


public methodToLocalTime
Konversi Instance ke LocalTime
public methodToLongDateString
Konversi Instance ke String dengan format setting LongDateString
public methodToLongTimeString
Konversi Instance ke String dengan format setting LongTime
public methodToShortDateString
Konversi Instance ke String dengan format setting ShortDate
public methodToShortTimeString
Konversi Instance ke String dengan format setting ShortTime
public methodToString
Konversi Instance ke String
public methodToUniversalTime
Konversi Instance ke UTC