C#日付に関する処理

環境:Windows10・Oracle12c・lenovoX250(メモリ8G HDD500G)

WordPressサイトにも技術情報を記載していますのでご参照ください。

日付処理の基本

  • 今日(日付)
    DateTime dt = DateTime.Today;
  • 今(日付と時間)
    DateTime dt =DateTime.Now;
    なお、DateTime.UtcNowとすると世界標準時刻を得られる。
  • 時間のみ
    TimeSpan ts = DateTime.Now.TimeOfDay;
  • 日時から日にちのみを得る
    DateTime dt = DateTime.Now;
    dt = dt.Date;
  • 日時から時間のみを得る
    DateTime dt = DateTime.Now;
    TimeSpan ts = dt.TimeOfDay;
  • 日付に時間を加える
    DateTime dt = DateTime.Today;
    TimeSpan ts = DateTime.Now.TimeOfDay;
    dt = dt + ts;
  • 今日に1日加え、明日にする
    DateTime dt = DateTime.Today.AddDays(1);
  • 指定の年月は何日あるのか
    int hmd = DateTime.DaysInMonth(DateTime.Today.Year, DateTime.Today.Month);
    int hmd = DateTime.DaysInMonth(2015,8);

日付における型変換

  • 時間から文字列への変換
    DateTime dt =DateTime.Now;
    String ts = dt.ToString("yyyyMMdd");
  • 日付・時刻に関する書式設定
    yyyy 2015
    yy 年(下2桁) 15
    MM 月(0埋め) 01
    dd 日(0埋め) 05
    ddd 曜日(簡略)
    dddd 曜日 月曜日
    HH 時(24h・0埋め) 01
    hh 時(12h・0埋め) 01
    mm 分(0埋め) 01
    ss 秒(0埋め) 01
  • 文字列から日付・時刻への変換
    String ts = "2015/01/24 10:10:08";
    String tf = "yyyy/MM/dd HH:mm:ss";
    //確実に実行するのであればこちら...
    DateTime dt = DateTime.ParseExact(ts,tf, null);
    //簡易に対応するのであればこちら...
    dt = DateTime.Parse(ts);
 

技術情報に戻る