ホームページ > バックエンド開発 > C++ > C#のデータタイムから相対時間(例:「2時間前」)を表示する方法は?

C#のデータタイムから相対時間(例:「2時間前」)を表示する方法は?

Linda Hamilton
リリース: 2025-02-01 23:11:10
オリジナル
933 人が閲覧しました

How to Display Relative Time (e.g.,

c#

の相対時間を表示します この記事では、C#。ソリューションには、これらの手順が含まれます DateTime

時差を計算します:

現在の時間と入力の違いを見つけてください
  1. 違いを変換します:DateTime差を秒、数分、時間、日、または数か月に変換します。
  2. 出力をフォーマットします:計算された違いに基づいてユーザーフレンドリーな相対時間文字列を作成します。
  3. これがC#コードの例です
  4. この関数はが入力としてa
  5. を取り、相対時間を表す文字列を返します。 数秒、数分、時間、日、月を処理します。 それを簡単に拡張して、年または他の時間ユニットを含めることができます。
の使用は、よりクリーンな出力を提供します。

を実際の

変数に置き換えることを忘れないでください。 この方法では、一貫性に
<code class="language-csharp">const int SECOND = 1;
const int MINUTE = 60 * SECOND;
const int HOUR = 60 * MINUTE;
const int DAY = 24 * HOUR;
const int MONTH = 30 * DAY;

public static string GetRelativeTime(DateTime yourDate)
{
    TimeSpan ts = DateTime.UtcNow - yourDate;
    double delta = Math.Abs(ts.TotalSeconds);

    if (delta < 60)
    {
        return $"{Math.Round(delta)} seconds ago";
    }
    else if (delta < 3600)
    {
        return $"{Math.Round(delta / MINUTE)} minutes ago";
    }
    else if (delta < 86400)
    {
        return $"{Math.Round(delta / HOUR)} hours ago";
    }
    else if (delta < 2592000) // 30 days
    {
        return $"{Math.Round(delta / DAY)} days ago";
    }
    else
    {
        return $"{Math.Round(delta / MONTH)} months ago";
    }
}</code>
ログイン後にコピー
を使用します。必要に応じて、これを

に調整することができます。 通常、UTCを使用することは、時間の計算には、タイムゾーンに関連する曖昧さを避けるために推奨されます。

以上がC#のデータタイムから相対時間(例:「2時間前」)を表示する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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