VB.NET String Format DateTime Source Code Example

String Format DateTime

Purpose: – Illustrates using .
Prerequistes:

  1. Install Visual Basic (Express or Standard Edition)
  2. Install SQL Server Express
  3. Download Northwind and pubs Database
  4. Attach Northwind Database to Databases in Sql Express
  5. Attach pubs Database to Databases in Sql Express

Notes:

  • Console Application is used to simplify things, but Windows Forms or Web Forms could also be used
  • You can build a library of syntax examples by using same project over and over and just commenting out what you do not want to execute in Module1.vb

Instructions:

  1. Use Visual Basic 2008 Express or Standard Edition
  2. Create new project;
    • Click File/New Project
    • Select Console Application Template
    • Select Visual Basic for Language
    • name of project could be VBNET_Syntax.
  3. Add New folder named “Language-Basics”
    • Right-click project name in solution explorer;
    • add new folder;
    • name of folder could be: Language-Basics
  4. Add Class Named clsStringFormatDateTime to Language-Basics folder
    • Right-click Language-Basics folder;
    • add new item;
    • Select class
    • Class name could be clsStringFormatDateTime
  5. Click on copy code in code below to copy code into clsStringFormatDateTime.vb
  6. Click on copy code in second set of code below to copy code into Module1.vb
  7. Click green arrow or press F5 to run program

Step 1: Use Copy Code to Cut-n-paste code into clsStringFormatDateTime.vb

Public Class clsStringFormatDateTime
 
    Public Sub Main()
        '**************************************************
        '        Custom DateTime Formatting
        '**************************************************
 
        Console.WriteLine("Custom DateTime Formatting:")
        'Here are custom format specifiers y (year), M (month), d (day), h (hour 12), H (hour 24), m (minute), s (second),
        ' f (second fraction), F (second fraction, trailing zeroes are trimmed), t (P.M or A.M) and z (time zone).
 
        'Following examples show how the format specifiers can be used.
        ' create date time 2009-12-21 20:04:08.101
        Dim dt As New DateTime(2009, 12, 20, 20, 4, 8, _
         101)
 
        ' Ways to format year: "9 09 009 2009"   year
        Console.WriteLine(String.Format("{0:y yy yyy yyyy}", dt))
 
        ' Ways to format month: "12 12 Dec December"  month
        Console.WriteLine(String.Format("{0:M MM MMM MMMM}", dt))
 
        ' Ways to format day: "21 21 Sun Sunday" day
        Console.WriteLine(String.Format("{0:d dd ddd dddd}", dt))
 
        ' Ways to format hour: "8 08 20 20"      hour 12/24
        Console.WriteLine(String.Format("{0:h hh H HH}", dt))
 
        ' Ways to format minute: "4 04"            minute
        Console.WriteLine(String.Format("{0:m mm}", dt))
 
        ' Ways to format second:  ' "8 08"            second 
        Console.WriteLine(String.Format("{0:s ss}", dt))
 
        ' Ways to format fraction of second: "1 10 101 1010"   sec.fraction
        Console.WriteLine(String.Format("{0:f ff fff ffff}", dt))
 
        ' Ways to format fraction of second: "1 1 101 101"   without zeros
        Console.WriteLine(String.Format("{0:F FF FFF FFFF}", dt))
 
        ' How to display am or pm: "P PM"            A.M. or P.M.
        Console.WriteLine(String.Format("{0:t tt}", dt))
 
        ' How to display timezone: "-6 -06 -06:00"   time zone
        Console.WriteLine(String.Format("{0:z zz zzz}", dt))
 
 
        '**************************************************
        '        Using date separator / (slash) and time sepatator : (colon).
        '**************************************************
        Console.WriteLine(vbCrLf)
        Console.WriteLine("Using date separator / (slash) and time sepatator : (colon):")
 
        'These characters will be rewritten to characters defined 
        'in the current DateTimeFormatInfo.DateSepa­rator and DateTimeFormatInfo.TimeSeparator.
 
 
        ' "20/12/09 20:04:08" - english (en-US)
        Console.WriteLine(String.Format("{0:d/M/yyyy HH:mm:ss}", dt))
 
        ' "20.12.2009 20:04:08" - german (de-DE)
        ' date separator in german culture is "." (so "/" changes to ".")
        Console.WriteLine(String.Format("{0:d/M/yyyy HH:mm:ss}", dt))
 
        '**************************************************
        ' Here are some examples of custom date and time formatting:
        '**************************************************
        Console.WriteLine(vbCrLf)
        Console.WriteLine("Here are some examples of custom date and time formatting:")
 
        ' month/day numbers without/with leading zeroes
        ' "12/20/2009"
        Console.WriteLine(String.Format("{0:M/d/yyyy}", dt))
 
        ' "12/20/2009"
        Console.WriteLine(String.Format("{0:MM/dd/yyyy}", dt))
 
        ' day/month names
        ' "Sun, Dec 20, 2009"
        Console.WriteLine(String.Format("{0:ddd, MMM d, yyyy}", dt))
 
        ' "Sunday, December 20, 2009"
        ' two/four digit year
        Console.WriteLine(String.Format("{0:dddd, MMMM d, yyyy}", dt))
 
        ' "12/20/09"
        Console.WriteLine(String.Format("{0:MM/dd/yy}", dt))
 
        ' "12/20/2009"
        Console.WriteLine(String.Format("{0:MM/dd/yyyy}", dt))
 
        '**************************************************
        '        Standard DateTime Formatting
        '**************************************************
        Console.WriteLine(vbCrLf)
        Console.WriteLine("Standard DateTime Formatting:")
        'In DateTimeFormatInfo there are defined standard patterns for the current culture. 
        'For example, property ShortTimePattern is string that contains value h:mm tt for en-US culture 
        'and value HH:mm for de-DE culture.
 
        'Following table shows patterns defined in DateTimeFormatInfo and their values for en-US culture. 
        'First column contains format specifiers for the String.Format method.
 
        'Specifier DateTimeFormatInfo property Pattern value (for en-US culture) 
        't ShortTimePattern h:mm tt 
        'd ShortDatePattern M/d/yyyy 
        'T LongTimePattern h:mm:ss tt 
        'D LongDatePattern dddd, MMMM dd, yyyy 
        'f (combination of D and t) dddd, MMMM dd, yyyy h:mm tt 
        'F FullDateTimePattern dddd, MMMM dd, yyyy h:mm:ss tt 
        'g (combination of d and t) M/d/yyyy h:mm tt 
        'G (combination of d and T) M/d/yyyy h:mm:ss tt 
        'm, M MonthDayPattern MMMM dd 
        'y, Y YearMonthPattern MMMM, yyyy 
        'r, R RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*) 
        's SortableDateTi­mePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss (*) 
        'u UniversalSorta­bleDateTimePat­tern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*) 
        '    (*) = culture independent 
 
        'Following examples show usage of standard format specifiers in String.Format method and the resulting output.
 
        ' "8:04 PM"                         ShortTime
        Console.WriteLine(String.Format("{0:t}", dt))
 
        ' "12/20/2009"                        ShortDate
        Console.WriteLine(String.Format("{0:d}", dt))
 
        ' "8:04:08 PM"                      LongTime
        Console.WriteLine(String.Format("{0:T}", dt))
 
        ' "Sunday, December 20, 2009"          LongDate
        Console.WriteLine(String.Format("{0:D}", dt))
 
        ' "Sunday, December 20, 2009 8:04 PM"  LongDate+ShortTime
        Console.WriteLine(String.Format("{0:f}", dt))
 
        ' "Sunday, December 20, 2009 8:04:08 PM" FullDateTime
        Console.WriteLine(String.Format("{0:F}", dt))
 
        ' "12/20/2009 8:04 PM"                ShortDate+ShortTime
        Console.WriteLine(String.Format("{0:g}", dt))
 
        ' "12/20/2009 8:04:08 PM"             ShortDate+LongTime
        Console.WriteLine(String.Format("{0:G}", dt))
 
        ' "December 20"                        MonthDay
        Console.WriteLine(String.Format("{0:m}", dt))
 
        ' "December, 2009"                     YearMonth
        Console.WriteLine(String.Format("{0:y}", dt))
 
        ' "Sun, 20 Dec 2009 20:04:08 GMT"   
        Console.WriteLine(String.Format("{0:r}", dt))
 
        ' "2009-12-20T20:04:08"             SortableDateTime
        Console.WriteLine(String.Format("{0:s}", dt))
 
        ' "2009-12-20 20:04:08Z"            UniversalSortableDateTime
        Console.WriteLine(String.Format("{0:u}", dt))
 
 
 
        Console.ReadLine()
    End Sub
End Class

Step 2: Use View Plain to Cut-n-paste code into Module1.vb

Module Module1
 
    Sub Main()
        '***** Language-Basics *************
 
         Dim myStringFormatDateTime As New clsStringFormatDateTime
        myStringFormatDateTime.Main()
 
 
 
    End Sub
 
End Module