ホームページ > バックエンド開発 > C++ > C# で特定のタイムゾーン (PST など) で DateTime オブジェクトを作成する方法

C# で特定のタイムゾーン (PST など) で DateTime オブジェクトを作成する方法

Patricia Arquette
リリース: 2025-01-26 04:26:09
オリジナル
576 人が閲覧しました

How to Create a DateTime Object in a Specific Time Zone (e.g., PST) in C#?

c#

の指定されたタイムゾーンにDateTimeオブジェクトを作成します ソフトウェア開発では、正確な処理日と時刻操作が不可欠です。これには、特定のタイムゾーンでの作成および操作データタイムオブジェクトが含まれます。 C#では、DateTimeコンストラクターが提供する設定タイムゾーンオプションが制限されています。この制限を解決するために、この記事では、TimeZoneInfoクラスで指定されたタイムゾーン(PSTなど)を使用してDateTimeオブジェクトを使用する方法について説明します。

TimeZoneInfo:強力なタイムゾーン処理メカニズム

system.timezoneという名前のTimezoneinfoクラスを使用することをお勧めします。タイムゾーンオプションで構築されたデータを構築するデータの構築に依存する代わりに。 TimeZoneInfoは、タイムゾーンを処理するための包括的な属性と方法を提供します。

実用的な解決策:DateTimewithzone構造

さまざまなタイムゾーンのデータタイムをシームレスに処理するために、次のカスタム構造を実装することを検討してください。

この方法の利点

<code class="language-csharp">public struct DateTimeWithZone
{
    private readonly DateTime utcDateTime;
    private readonly TimeZoneInfo timeZone;

    public DateTimeWithZone(DateTime dateTime, TimeZoneInfo timeZone)
    {
        var dateTimeUnspec = DateTime.SpecifyKind(dateTime, DateTimeKind.Unspecified);
        utcDateTime = TimeZoneInfo.ConvertTimeToUtc(dateTimeUnspec, timeZone);
        this.timeZone = timeZone;
    }

    public DateTime UniversalTime { get { return utcDateTime; } }

    public TimeZoneInfo TimeZone { get { return timeZone; } }

    public DateTime LocalTime
    {
        get
        {
            return TimeZoneInfo.ConvertTime(utcDateTime, timeZone);
        }
    }
}</code>
ログイン後にコピー
この構造を使用すると、UTCでDateTimeオブジェクトを使用して、表示または処理のために異なるタイムゾーンに簡単に変換できます。一般的な時間(UTC)、タイムゾーン情報、および指定されたタイムゾーンに基づく現地時間の属性を提供します。

例を使用

PSTでDateTimeオブジェクトを作成するには、次のコードを使用できます。

これにより、PSTタイムゾーンの現在の日付と時刻を表すDateTimewithzoneのオブジェクトが作成されます。これで、UTC時間、PST時間、およびタイムゾーン情報に簡単にアクセスできるようになりました。

以上がC# で特定のタイムゾーン (PST など) で DateTime オブジェクトを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート