- - PR -
[C#] 日付の比較
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-29 14:53
string str = System.DateTime.Today.ToString("yyyy/MM/dd");
上記の様な形式をしたstring型の日付を表す文字列が2つあるんですが この2つを比較してどっちが先かとか判定したいのですが、いいやり方は ないでしょうか? 今は単純に年、月、日ごとにsubustringで切り出して数値変換して 比較してるって感じなので・・・ 何かパパッとできるやり方があれば教えてください。 よろしくお願いします。 | ||||
|
投稿日時: 2006-05-29 14:56
お世話になります。
DateTime 型同士で比較するのはダメなんですか? _________________ なおこ(・∀・) @ わんくま同盟 主婦と.NETと犬の記録 主婦と.NETと犬のぶろぐ | ||||
|
投稿日時: 2006-05-29 14:59
お返事ありがとうございます。
渡されたDBの仕様がVarchar型なので最終的には ToStringしますが、書き込む前だったら構わないと思います。 何かいい方法あるのでしょうか? | ||||
|
投稿日時: 2006-05-29 15:03
お世話になります。
? 受け取った値が文字列なら、 DateTime.Parse で DateTime 型にして、 比較すればよいのではないですか? if (DateTime.Parse("2005/01/01") < DateTime.Today){ // 今日よりも小さかった場合 } | ||||
|
投稿日時: 2006-05-29 15:04
System.DateTime.Compareを使用したらどうでしょう?
| ||||
|
投稿日時: 2006-05-29 15:19
別に文字列でもそのまま比較したらいい気がしないでもない。
| ||||
|
投稿日時: 2006-05-29 15:24
私もそんな気がしないでもないです。 | ||||
|
投稿日時: 2006-05-29 15:27
System.DateTime.ParseExact メソッド で System.DateTime 型のインスタンスを取得して、
双方の System.DateTime を比較演算子で比較するのが、一般的でしょう。 一応、日付として保証されますからね。 (DB の型が TIMESTAMP 系ならあまり意味がないですが) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |