C#におけるDateTimeクラスの操作と日付比較の方法
C#のDateTimeクラスは、日付と時刻を表すために使用される基本的な構造体です。現在の日時の取得から、特定の日付の生成、日付同士の比較まで、幅広い操作をシンプルなコードで実現できます。
DateTimeクラスの主なプロパティ
DateTimeには、日付や時刻の各要素へアクセスするための便利なプロパティが多数用意されています。以下はその代表的なプロパティです。
| 番号 | プロパティと説明 |
|---|---|
| 1 | Date このインスタンスの日付部分(時刻は00:00:00)を取得します |
| 2 | Day 月内の日(1〜31)を取得します |
| 3 | Hour 時間の部分(0〜23)を取得します |
| 4 | Minute 分の部分(0〜59)を取得します |
| 5 | Month 月の部分(1〜12)を取得します |
C#で日付を比較する方法
C#で日付を比較するには、まずDateTimeオブジェクトを使って比較対象となる2つの日付を設定します。DateTimeでは比較演算子(<、>、==など)を直接使用できるため、数値のように直感的に日付の前後関係を判定できます。
Date 1 の設定
DateTime date1 = new DateTime(2018, 07, 20);
Console.WriteLine("Date 1 : {0}", date1);
Date 2 の設定
DateTime date2 = new DateTime(2018, 07, 25);
Console.WriteLine("Date 2 : {0}", date2);
それでは、これら2つの日付を実際に比較してみましょう。以下は、C#で日付を比較するサンプルコードです。
サンプルコード
using System;
namespace Program {
class Demo {
static int Main() {
DateTime date1 = new DateTime(2018, 07, 20);
Console.WriteLine("Date 1 : {0}", date1);
DateTime date2 = new DateTime(2018, 07, 25);
Console.WriteLine("Date 2 : {0}", date2);
if (date1 < date2)
Console.WriteLine("{0} comes before {1}", date1, date2);
Console.Read();
return 0;
}
}
}
実行結果
Date 1 : 7/20/2018 12:00:00 AM Date 2 : 7/25/2018 12:00:00 AM 7/20/2018 12:00:00 AM comes before 7/25/2018 12:00:00 AM
この例では、if文と比較演算子「<」を使用して、date1がdate2より前の日付であるかどうかを判定しています。条件が真の場合、「date1はdate2より前である」ことを示すメッセージが出力されます。このように、DateTimeオブジェクトは演算子で直接比較できるため、日付の順序チェックや期間判定などを簡潔に記述できるのが大きなメリットです。
-
CSSでリンクをスタイリングする方法|hover効果と擬似クラスの基本
CSSを使えば、リンクを自由自在にスタイリングできます。文字に色をつけたり、背景を設定したり、サイズを変更したりといった書式設定はもちろん、アニメーションを組み合わせれば、マウス操作に応じた心地よい視覚効果も簡単に実現できます。 擬似クラスは「LVHA」の順序で記述する リンク関連の擬似クラスを正しく機能させるには、次の順序で記述することが重要です。 :link … 未訪問のリンク :visited … 訪問済みのリンク :hover … マウスカーソルが乗っている状態 :active … クリックされている瞬間 この順序は各擬似クラスの頭文字を取って「LVHA順」と呼ばれます。順序を守ら
-
CSS3のfilterプロパティで実現するフィルター効果の使い方
CSS3フィルター効果とはCSS3では、filterプロパティを使用することで、画像や要素にさまざまな視覚的なフィルター効果を簡単に適用できます。ぼかし、明るさ、コントラスト、色調の変更など、画像編集ソフトのようなエフェクトをCSSだけで実現できるのが大きな特徴です。使用できるフィルター関数の一覧filterプロパティには、以下のようなフィルター効果を設定できます。blur() | brightness() | contrast() | grayscale() | invert() | opacity() | saturate() | url();それぞれの主な役割は以下のとおりです。blur