Visual Basic wordt geleverd met een aantal hulpmiddelen voor het analyseren van tijdzones . De " TimeZoneInfo " soort variabele kunt u bepaalde tijdzones definiëren als variabelen . Operaties laat u de tijd in die verschillende tijdzones controleren en deze om te zetten tijden hun eigen variabelen . Een aparte set van operaties manipuleren tijden en data , het vinden van het verschil tussen de twee tijden die u gedefinieerd op basis van de verschillende tijdzones . Instructies 1 Maak een Visual Basic-programma vanaf de volgende Microsoft- code naar uw register de tijdzone -id : Imports System.Collections.ObjectModel Imports System . globalisering Imports System.IO Module Voorbeeld Public Sub Main ( ) Const OUTPUTFILENAME As String = " C : \\ Temp \\ TimeZoneInfo.txt " Dim tijdzones Zoals ReadOnlyCollection ( Of TimeZoneInfo ) = TimeZoneInfo.GetSystemTimeZones ( ) Dim sw Zoals StreamWriter = Nieuw StreamWriter ( OUTPUTFILENAME , False ) op Twitter voor Elke tijdzone Zoals TimeZoneInfo in tijdzones Dim hasDST zoals Van Boole = timeZone.SupportsDaylightSavingTime Dim offsetFromUtc Zoals TimeSpan = timeZone.BaseUtcOffset Dim adjustRules ( ) Zoals System.TimeZoneInfo.AdjustmentRule Dim offsetString als Koord sw.WriteLine ( " ID : { 0 } " , timeZone.Id ) sw.WriteLine ( " display Name : { 0 , 40 } " , Tijdzone . DisplayName ) sw.WriteLine ( " Standaard Naam: { 0 , 39 } " , timeZone.StandardName ) sw.Write ( " Daylight Naam: { 0 , 39 } " , Tijdzone . DaylightName ) sw.Write ( iif ( hasDST , " *** Has " , " *** heeft niet " ) ) sw.WriteLine ( " Daylight Saving Time ** * " ) op offsetString = String.Format ( " { 0 } uur , { 1 } minuten " , offsetFromUtc.Hours , offsetFromUtc.Minutes ) sw.WriteLine ( " offset van UTC : { 0 , 40 } " , offsetString ) adjustRules = timeZone.GetAdjustmentRules ( ) sw.WriteLine ( " Aantal aanpassing regels : { 0 , 26 } " , adjustRules.Length ) < br > Als adjustRules.Length > 0 sw.WriteLine dan ( " aanpassing regels : ' ) op Twitter Voor Elke regel Zoals TimeZoneInfo.AdjustmentRule In adjustRules Dim transTimeStart Zoals TimeZoneInfo.TransitionTime = rule.DaylightTransitionStart Dim transTimeEnd Zoals TimeZoneInfo.TransitionTime = rule.DaylightTransitionEnd sw.WriteLine ( " From { 0 } tot { 1 } " , rule.DateStart , rule.DateEnd ) sw.WriteLine ( " Delta : { 0 } " , rule.DaylightDelta ) op Twitter Als Niet transTimeStart.IsFixedDateRule sw.WriteLine ( " Begint bij { 0 : t } op { 1 } van de week {2} van { 3 } " , transTimeStart.TimeOfDay , _ transTimeStart.DayOfWeek , _ transTimeStart.Week , _ < br MonthName > ( transTimeStart.Month ) ) sw.WriteLine ( " Eindigt bij { 0 : t } op { 1 } van de week {2} van { 3 } " , transTimeEnd.TimeOfDay , _ < br transTimeEnd.DayOfWeek > , _ transTimeEnd.Week , _ MonthName ( transTimeEnd.Month ) ) op sw.WriteLine Else ( " Begint op {0 : t } op { 1 } { 2 } " , transTimeStart.TimeOfDay , _ transTimeStart.Day , _ MonthName ( transTimeStart.Month ) ) op Twitter sw.WriteLine ( " Eindigt bij { 0 : t } op { 1 } { 2 } " , transTimeEnd.TimeOfDay , _ transTimeEnd.Day , _ MonthName ( transTimeEnd. maand ) ) End Als Volgende Einde Als Volgende sw.Close ( ) 2 Maak de volgende Visual Basic-programma : Public Shared Sub ( ) Belangrijkste Dim timeZone1 Zoals TimeZoneInfo timeZone1 = TimeZoneInfo.FindSystemTimeZoneByID ( " Pacific Standard Time " ) Dim timeZone2 Zoals TimeZoneInfo timeZone2 = TimeZoneInfo.FindSydtemTimeZoneByID ( " Mountain Standard Time " ) Dim verschil As Long = DateDiff ( DateInterval.Hour , 1stTimeZone.StandardTime , 2ndTimeZone.StandardTime ) Console.WriteLine ( verschil ) 3 Vervang " Pacific Standard Time " met de eerste tijdzone die u wilt vergelijken , de zorg om exact te reproduceren de ID uit de lijst van Stap 1 . 4 Vervang " Mountain Standard Time " met de tweede tijdzone die u wilt vergelijken . 5 Voer het programma uit . < br >
|