工作上有些瓶頸 加上上週又生大病
對生活感到實在有點無力 還好我有很棒的家人 :)
ok 今天要談的是 計算自訂日期和本日的相差天數
其實蠻簡單 只要了解 DateTime 中的 Subtract 函數即可
傳入的有 TimeSpan 格式 和 DateTime 格式
本範例是以輸入 DateTime 做示範
這次沒抓 UI 畫面的圖 所以坎尼稍微講一下
畫面上有一個 TextBox (輸入比較的日期) 一個 Button
當按下 Button 之後 就會執行下列程式碼

這邊要注意的就是 Subtract 函數
傳入 DateTime 它就會回傳 TimeSpan 格式
反之 傳入 TimeSpan 它就回傳 DateTime 格式 XDDD
另外,這邊坎尼是用 DateTime.Now 去當比較基準
下面就是結果畫面
若是今天以前的日子 數字會是 正數
若是未來的日子 數字就會是 負數


當然 TimeSpan 提供的不只是有天數的比較
還有 時 分 秒 毫秒 等比較方式 (見下圖)

不過看完圖 你或許會有疑惑 (坎尼一開始也有)
「那 TotalDays 是什麼?」
於是坎尼把程式碼稍微改了一下 輸出畫面如下

看來就是和你所輸入的日期 (這邊沒輸入時分秒 應該是和 00:00:00 比較)
所相差的真正天數
對了 這個會用在什麼地方呢?
坎尼當然是客戶有要求才會去做啊 XD
不過在真正的應用上 可以做成行事曆、鬧鐘....等等
最近坎尼會振作 不然 Tim 都說怎麼文章一月比一月少 囧>
沒有留言:
張貼留言