menu
書いてる野郎
orebike@gmail.com
日時操作に関して通常はDateTime型を使うのでこれでやる。
@IT:.NET TIPS 日付や時刻の文字列をDateTimeオブジェクトに変換するには? - C# VB.NET http://www.atmarkit.co.jp/fdotnet/dotnettips/203dateparse/dateparse.html
普通に比較演算
< > <= == >=
で比較できる
比較ができるとDateTime型はこういう構文が使える
DateTime hogeDate = fromDate; while(hogeDate <= toDate){ hogeDate = hogeDate.AddDays(1); }
これはできない、DateTimeはクラスではなくて構造体なので実体であって参照型じゃない、つまりポインタを格納するものじゃないので null が突っ込めない。
イロイロネットを見る限りだと
DateTime hoge = DateTime.MaxValue;
こんな感じにしておけ・・・のよう
DateTime hoge = Datetime.Today;
経過日数を求めるには DateTime の Subtract メソッドを使う。結果はTimeSpanという構造体に格納される。 TimeSpan構造体の中のDaysメンバに日数がint型で入ってるのでそいつを取り出して使う
DateTime from = new DateTime(2008,1,1); DateTime to = new DateTime(2008,1,4); TimeSpan ts = to.Subtract(from); //↓日数 ts.Days;
TimeSpanは日数だけでなく経過時間や経過秒などの情報も持っている
↓参考 TimeSpan プロパティ (System) http://msdn2.microsoft.com/ja-jp/library/system.timespan_properties(VS.80).aspx