TimeZone Třída

Definice

Upozornění

System.TimeZone has been deprecated. Please investigate the use of System.TimeZoneInfo instead.

Upozornění

System.TimeZone has been deprecated. Investigate the use of System.TimeZoneInfo instead.

Představuje časové pásmo.

public ref class TimeZone abstract
[System.Obsolete("System.TimeZone has been deprecated.  Please investigate the use of System.TimeZoneInfo instead.")]
public abstract class TimeZone
[System.Obsolete("System.TimeZone has been deprecated. Investigate the use of System.TimeZoneInfo instead.")]
public abstract class TimeZone
[System.Serializable]
public abstract class TimeZone
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TimeZone
[<System.Obsolete("System.TimeZone has been deprecated.  Please investigate the use of System.TimeZoneInfo instead.")>]
type TimeZone = class
[<System.Obsolete("System.TimeZone has been deprecated. Investigate the use of System.TimeZoneInfo instead.")>]
type TimeZone = class
[<System.Serializable>]
type TimeZone = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TimeZone = class
Public MustInherit Class TimeZone
Dědičnost
TimeZone
Atributy

Příklady

Následující příklad odkazuje a zobrazí vybrané TimeZone elementy třídy.

// Example of selected TimeZone class elements.
using namespace System;
using namespace System::Globalization;
int main()
{
   String^ dataFmt = "{0,-30}{1}";
   String^ timeFmt = "{0,-30}{1:yyyy-MM-dd HH:mm}";
   Console::WriteLine( "This example of selected TimeZone class "
   "elements generates the following \n"
   "output, which varies depending on the "
   "time zone in which it is run.\n" );
   
   // Get the local time zone and the current local time and year.
   TimeZone^ localZone = TimeZone::CurrentTimeZone;
   DateTime currentDate = DateTime::Now;
   int currentYear = currentDate.Year;
   
   // Display the names for standard time and daylight saving 
   // time for the local time zone.
   Console::WriteLine( dataFmt, "Standard time name:", localZone->StandardName );
   Console::WriteLine( dataFmt, "Daylight saving time name:", localZone->DaylightName );
   
   // Display the current date and time and show if they occur 
   // in daylight saving time.
   Console::WriteLine( String::Concat( "\n", timeFmt ), "Current date and time:", currentDate );
   Console::WriteLine( dataFmt, "Daylight saving time?", localZone->IsDaylightSavingTime( currentDate ) );
   
   // Get the current Coordinated Universal Time (UTC) and UTC 
   // offset.
   DateTime currentUTC = localZone->ToUniversalTime( currentDate );
   TimeSpan currentOffset = localZone->GetUtcOffset( currentDate );
   Console::WriteLine( timeFmt, "Coordinated Universal Time:", currentUTC );
   Console::WriteLine( dataFmt, "UTC offset:", currentOffset );
   
   // Get the DaylightTime object for the current year.
   DaylightTime^ daylight = localZone->GetDaylightChanges( currentYear );
   
   // Display the daylight saving time range for the current year.
   Console::WriteLine( "\nDaylight saving time for year {0}:", currentYear );
   Console::WriteLine( "{0:yyyy-MM-dd HH:mm} to "
   "{1:yyyy-MM-dd HH:mm}, delta: {2}", daylight->Start, daylight->End, daylight->Delta );
}

/*
This example of selected TimeZone class elements generates the following
output, which varies depending on the time zone in which it is run.

Standard time name:           Pacific Standard Time
Daylight saving time name:    Pacific Daylight Time

Current date and time:        2006-01-06 16:47
Daylight saving time?         False
Coordinated Universal Time:   2006-01-07 00:47
UTC offset:                   -08:00:00

Daylight saving time for year 2006:
2006-04-02 02:00 to 2006-10-29 02:00, delta: 01:00:00
*/
// Example of selected TimeZone class elements.
using System;
using System.Globalization;

class TimeZoneDemo
{
    static void Main( )
    {
        const string dataFmt = "{0,-30}{1}";
        const string timeFmt = "{0,-30}{1:yyyy-MM-dd HH:mm}";

        Console.WriteLine(
            "This example of selected TimeZone class " +
            "elements generates the following \n" +
            "output, which varies depending on the " +
            "time zone in which it is run.\n" );

        // Get the local time zone and the current local time and year.
        TimeZone localZone = TimeZone.CurrentTimeZone;
        DateTime currentDate = DateTime.Now;
        int      currentYear = currentDate.Year;

        // Display the names for standard time and daylight saving 
        // time for the local time zone.
        Console.WriteLine( dataFmt, "Standard time name:", 
            localZone.StandardName );
        Console.WriteLine( dataFmt, "Daylight saving time name:", 
            localZone.DaylightName );

        // Display the current date and time and show if they occur 
        // in daylight saving time.
        Console.WriteLine( "\n" + timeFmt, "Current date and time:",
            currentDate );
        Console.WriteLine( dataFmt, "Daylight saving time?", 
            localZone.IsDaylightSavingTime( currentDate ) );

        // Get the current Coordinated Universal Time (UTC) and UTC 
        // offset.
        DateTime currentUTC = 
            localZone.ToUniversalTime( currentDate );
        TimeSpan currentOffset = 
            localZone.GetUtcOffset( currentDate );

        Console.WriteLine( timeFmt, "Coordinated Universal Time:", 
            currentUTC );
        Console.WriteLine( dataFmt, "UTC offset:", currentOffset );

        // Get the DaylightTime object for the current year.
        DaylightTime daylight = 
            localZone.GetDaylightChanges( currentYear );

        // Display the daylight saving time range for the current year.
        Console.WriteLine( 
            "\nDaylight saving time for year {0}:", currentYear );
        Console.WriteLine( "{0:yyyy-MM-dd HH:mm} to " +
            "{1:yyyy-MM-dd HH:mm}, delta: {2}", 
            daylight.Start, daylight.End, daylight.Delta );
    } 
} 

/*
This example of selected TimeZone class elements generates the following
output, which varies depending on the time zone in which it is run.

Standard time name:           Pacific Standard Time
Daylight saving time name:    Pacific Daylight Time

Current date and time:        2006-01-06 16:47
Daylight saving time?         False
Coordinated Universal Time:   2006-01-07 00:47
UTC offset:                   -08:00:00

Daylight saving time for year 2006:
2006-04-02 02:00 to 2006-10-29 02:00, delta: 01:00:00
*/
' Example of selected TimeZone class elements.
Imports System.Globalization

Module TimeZoneDemo

    Sub Main( )

        Const dataFmt As String = "{0,-30}{1}"
        Const timeFmt As String = "{0,-30}{1:yyyy-MM-dd HH:mm}"

        Console.WriteLine( "This example of selected " & _
            "TimeZone class elements generates the following " & _
            vbCrLf & "output, which varies depending on the " & _
            "time zone in which it is run." & vbCrLf )

        ' Get the local time zone and the current local time and year.
        Dim localZone As TimeZone = TimeZone.CurrentTimeZone
        Dim currentDate As DateTime = DateTime.Now
        Dim currentYear As Integer = currentDate.Year

        ' Display the names for standard time and daylight saving 
        ' time for the local time zone.
        Console.WriteLine( dataFmt, "Standard time name:", _
            localZone.StandardName )
        Console.WriteLine( dataFmt, "Daylight saving time name:", _
            localZone.DaylightName )

        ' Display the current date and time and show if they occur 
        ' in daylight saving time.
        Console.WriteLine( vbCrLf & timeFmt, _
            "Current date and time:", currentDate )
        Console.WriteLine( dataFmt, "Daylight saving time?", _
            localZone.IsDaylightSavingTime( currentDate ) )

        ' Get the current Coordinated Universal Time (UTC) and UTC 
        ' offset.
        Dim currentUTC As DateTime = _
            localZone.ToUniversalTime( currentDate )
        Dim currentOffset As TimeSpan = _
            localZone.GetUtcOffset( currentDate )

        Console.WriteLine( timeFmt, "Coordinated Universal Time:", _
            currentUTC )
        Console.WriteLine( dataFmt, "UTC offset:", currentOffset )

        ' Get the DaylightTime object for the current year.
        Dim daylight As DaylightTime = _
            localZone.GetDaylightChanges( currentYear )

        ' Display the daylight saving time range for the current year.
        Console.WriteLine( vbCrLf & _
            "Daylight saving time for year {0}:", currentYear )
        Console.WriteLine( "{0:yyyy-MM-dd HH:mm} to " & _
            "{1:yyyy-MM-dd HH:mm}, delta: {2}", _
            daylight.Start, daylight.End, daylight.Delta )
    End Sub 
End Module 

'This example of selected TimeZone class elements generates the following
'output, which varies depending on the time zone in which it is run.
'
'Standard time name:           Pacific Standard Time
'Daylight saving time name:    Pacific Daylight Time
'
'Current date and time:        2006-01-06 16:47
'Daylight saving time?         False
'Coordinated Universal Time:   2006-01-07 00:47
'UTC offset:                   -08:00:00
'
'Daylight saving time for year 2006:
'2006-04-02 02:00 to 2006-10-29 02:00, delta: 01:00:00

Poznámky

Časové pásmo je geografická oblast, ve které se používá stejný standardní čas.

Důležité

Kdykoli je to možné, použijte TimeZoneInfo místo třídy třídu TimeZone .

Pomocí třídy můžete TimeZone načíst informace o aktuálním časovém pásmu a převést časy z místního času na koordinovaný univerzální čas (UTC) nebo naopak. Třídu však nemůžete použít TimeZone k reprezentaci časových pásem jiných než místních zón nebo ke zpracování převodů data a času z jednoho časového pásma do jiného. Pro tento účel použijte TimeZoneInfo třídu. Tuto třídu můžete použít k načtení informací o libovolném časovém pásmu definovaném v místním systému, k vytvoření vlastních časových pásem a k převodu časů z jednoho časového pásma na jiné.

Třída TimeZone podporuje pouze jedno pravidlo úpravy letního času pro místní časové pásmo. V důsledku toho TimeZone může třída přesně hlásit informace o letním čase nebo převést mezi UTC a místním časem pouze pro období, ve kterém je platné nejnovější pravidlo úpravy. Naproti tomu TimeZoneInfo třída podporuje více pravidel úprav, což umožňuje pracovat s historickými daty časového pásma.

Poznámky pro implementátory

Kromě poskytování implementací členů abstract (těch, které jsou označené MustOverride v Visual Basic), je důležité, aby třídy odvozené od TimeZone přepsání výchozího ToLocalTime(DateTime) chování metody. Důvodem je to, že výchozí chování ToLocalTime(DateTime) ve .NET Framework verze 2.0 není závislé na volání GetUtcOffset(DateTime), stejně jako v .NET Framework verze 1.0 a 1.1. Podrobnosti najdete v ToLocalTime(DateTime) metodě.

Konstruktory

TimeZone()

Inicializuje novou instanci TimeZone třídy.

Vlastnosti

CurrentTimeZone

Získá časové pásmo aktuálního počítače.

DaylightName

Získá název letního časového pásma.

StandardName

Získá standardní název časového pásma.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetDaylightChanges(Int32)

Vrátí období letního času pro určitý rok.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
GetUtcOffset(DateTime)

Vrátí posun koordinovaného univerzálního času (UTC) pro zadaný místní čas.

IsDaylightSavingTime(DateTime)

Vrátí hodnotu určující, jestli je zadané datum a čas v časovém období letního času.

IsDaylightSavingTime(DateTime, DaylightTime)

Vrátí hodnotu určující, jestli je zadané datum a čas v zadaném časovém období letního času.

MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToLocalTime(DateTime)

Vrátí místní čas odpovídající zadané hodnotě data a času.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
ToUniversalTime(DateTime)

Vrátí standard UTC (Coordinated Universal Time), který odpovídá zadanému času.

Platí pro

Viz také