このエントリーをはてなブックマークに追加


指定した年月の月末の日を取得する・DaysInMonth

C#,VBで指定した年、月で月末の日を取得する方法を紹介します。
サンプルコード(コンソールアプリケーション)もありますのでご活用ください。
今回使用するメソッドは、DateTime.DaysInMonthになります。

参考サイト

DaysInMonthメソッドについて

DaysInMonthは引数に指定した年、月の日数を返却します。
つまり、日数=月末日となるので、月末日を求めることができます。
もちろん、うるう年も問題なく29日と返却されます。

C# サンプルコード

C#でDaysInMonthメソッドを利用したサンプルコードになります。

using System;

namespace windev01
{
    class Program
    {
        static void Main(string[] args)
        {
            int y, m;
            for( y = 2019; y <= 2020; y++ )
            {
                for( m = 1; m <= 12; m++ )
                {
                    Console.WriteLine(y + "/" + m + "/" + DateTime.DaysInMonth(y, m));
                }
            }
        }
    }
}

Visual Basic サンプルコード

VBでDaysInMonthメソッドを利用したサンプルコードになります。

Module Module1

    Sub Main()
        Dim y As Integer
        Dim m As Integer
        For y = 2019 To 2020
            For m = 1 To 12
                Console.WriteLine(y & "/" & m & "/" & DateTime.DaysInMonth(y, m))
            Next
        Next

    End Sub

End Module

サンプルコードの実行結果

上記、C#,VBのサンプルコードを実行した時の出力になります。
オリンピックイヤーである2020年2月が29日になっているのが確認できますね。

2019/1/31
2019/2/28
2019/3/31
2019/4/30
2019/5/31
2019/6/30
2019/7/31
2019/8/31
2019/9/30
2019/10/31
2019/11/30
2019/12/31
2020/1/31
2020/2/29
2020/3/31
2020/4/30
2020/5/31
2020/6/30
2020/7/31
2020/8/31
2020/9/30
2020/10/31
2020/11/30
2020/12/31

以上、C#, Visual Basic(VB)で月末を取得するサンプルコードの紹介でした。



添付ファイル: fileModule1.vb 2件 [詳細] fileProgram.cs 2件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-12-01 (日) 22:05:35