C#中DateTime的時(shí)間加減法操作小結(jié)
在C#語(yǔ)言中,DateTime是用來(lái)表示時(shí)間的類(lèi),在C#的DateTime時(shí)間類(lèi)中,提供了好像時(shí)間對(duì)象加減法操作,可用于某一個(gè)時(shí)間對(duì)象加減 多少年、加減多少個(gè)月、加減多少天、加減多少小時(shí)、加減多少分鐘、加減多少秒等操作,此文將總結(jié)C#的DateTime類(lèi)中的時(shí)間加減操作運(yùn)算。
(1)加減多少年操作:AddYears方法,具體參考C#使用AddYears方法獲取當(dāng)前時(shí)間20年后的時(shí)刻。
C#使用AddYears方法獲取當(dāng)前時(shí)間20年后的時(shí)刻
2019-08-10 10:01
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,針對(duì)時(shí)間對(duì)象的操作,如果要計(jì)算某一個(gè)時(shí)間點(diǎn)N年后對(duì)應(yīng)的時(shí)間時(shí)刻,則可以使用DateTime類(lèi)的AddYears方法來(lái)實(shí)現(xiàn)。此文將介紹當(dāng)前時(shí)間點(diǎn)20年后對(duì)應(yīng)的時(shí)間點(diǎn)時(shí)刻的實(shí)現(xiàn)方式。
AddYears方法的簽名為:DateTime AddYears(int value);,參數(shù)value為需要為加減的年數(shù)信息,如果value參數(shù)為負(fù)數(shù)時(shí),則表示往前多少年對(duì)應(yīng)的時(shí)間點(diǎn),如果value值為正數(shù)則表示往后多少年對(duì)應(yīng)的時(shí)間點(diǎn)。
例如獲取當(dāng)前時(shí)間的加上20年對(duì)應(yīng)的時(shí)間時(shí)刻(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddYears(20);
運(yùn)行結(jié)果為:result 結(jié)果為2039年8月10日 9:15:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的往前20年對(duì)應(yīng)的時(shí)間信息,則可以使用下列代碼。
DateTime result = DateTime.Now.AddYears(-20);
(2)加減多少月操作:AddMonths方法,具體參考C#使用AddMonths方法獲取當(dāng)前時(shí)間幾個(gè)月后的時(shí)間點(diǎn)。
C#使用AddMonths方法獲取當(dāng)前時(shí)間幾個(gè)月后的時(shí)間點(diǎn)
2019-08-10 09:44
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè) AddMonths方法,此方法可用于時(shí)間的月數(shù)加減,例如某一個(gè)時(shí)間點(diǎn)加減幾個(gè)月后對(duì)應(yīng)的時(shí)間點(diǎn)。此文將介紹當(dāng)前時(shí)間加減幾個(gè)月對(duì)應(yīng)的時(shí)間點(diǎn),例如當(dāng)前 時(shí)間減去一個(gè)月對(duì)應(yīng)的上個(gè)月的時(shí)間點(diǎn)信息。
AddMonths方法的簽名為:DateTime AddMonths(int months);,參數(shù)value為需要為加減的月數(shù),為整型Int類(lèi)型參數(shù)。當(dāng)參數(shù)為負(fù)數(shù)時(shí)候,則表示以計(jì)算時(shí)間為基準(zhǔn)點(diǎn),向前計(jì)算,可以理解為減去多少個(gè)月后得到的時(shí)間點(diǎn)。
例如獲取當(dāng)前時(shí)間的加上1個(gè)月后的時(shí)間點(diǎn)(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddMonths(1);//獲取當(dāng)前時(shí)間往后1個(gè)月的時(shí)間點(diǎn)
運(yùn)行結(jié)果為:result 結(jié)果為2019年9月10日 9:15:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的往前1個(gè)月對(duì)應(yīng)的時(shí)間點(diǎn)則可以按下列代碼實(shí)現(xiàn):
DateTime result = DateTime.Now.AddMonths(-1);
(3)加減多少天操作:AddDays方法,具體參考C#使用AddDays方法獲取當(dāng)前日期前一天。
C#使用AddDays方法獲取當(dāng)前日期前一天
2019-08-10 09:26
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè)方法 AddDays方法,此方法主要是將指定天數(shù)加到對(duì)應(yīng)的DateTime對(duì)象算,一般用來(lái)計(jì)算某個(gè)時(shí)間的前幾天或者后幾天。AddDays方法簽名為 DateTime AddDays(double value),參數(shù)value代表需要加減的天數(shù),可以為雙精度double類(lèi)型小數(shù)。此文將以此來(lái)介紹計(jì)算當(dāng)前時(shí)間前一天。
在AddDays方法中,傳入的參數(shù)可為正數(shù)也可為負(fù)數(shù),如果是負(fù)數(shù),則是返回計(jì)算時(shí)間之前的某個(gè)日期時(shí)間,可以理解為時(shí)間減法。
例如獲取當(dāng)前時(shí)間的前一天的這個(gè)時(shí)間點(diǎn)(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddDays(-1);//獲取當(dāng)前時(shí)間的前一天
運(yùn)行結(jié)果為:result 結(jié)果為2019年8月9日 9:15:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的前半天時(shí)間,則傳入?yún)?shù)0.5即可,代碼如下:
DateTime result = DateTime.Now.AddDays(-0.5);//獲取當(dāng)前時(shí)間的前半天
(4)加減多少小時(shí)操作:AddHours方法,具體參考C#使用AddHours方法獲取當(dāng)前時(shí)間加減幾個(gè)小時(shí)的時(shí)間。
C#使用AddHours方法獲取當(dāng)前時(shí)間加減幾個(gè)小時(shí)的時(shí)間
2019-08-10 09:33
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè) AddHours方法,此方法可用于計(jì)算時(shí)間的加減,參數(shù)為加減的小時(shí)數(shù)。返回結(jié)果為某一個(gè)時(shí)間對(duì)象加減多少個(gè)小時(shí)后得到的新的時(shí)間對(duì)象。此文將于當(dāng)當(dāng)前 加減20個(gè)小時(shí)為例講解AddHours方法。
AddHours方法的簽名為: DateTime AddHours(double value),參數(shù)value為需要加減的小時(shí)數(shù),為雙精度double類(lèi)型,此參數(shù)可以為負(fù)數(shù),當(dāng)參數(shù)為負(fù)數(shù)的時(shí)候,則代表指定時(shí)間減去多少個(gè)小時(shí)后得到的時(shí)間對(duì)象。
例如獲取當(dāng)前時(shí)間的加上20個(gè)小時(shí)后的時(shí)刻(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddHours(20);//獲取當(dāng)前時(shí)間20個(gè)小時(shí)后的時(shí)刻點(diǎn)
運(yùn)行結(jié)果為:result 結(jié)果為2019年8月11日 5:15:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的前20個(gè)小時(shí)對(duì)應(yīng)的時(shí)刻,則傳入?yún)?shù)-20即可,代碼如下:
DateTime result = DateTime.Now.AddHours(-20);
(5)加減多少分鐘操作:AddMinutes方法,具體參考C#使用AddMinutes方法獲取當(dāng)前時(shí)間加減幾分鐘對(duì)應(yīng)的時(shí)刻。
C#使用AddMinutes方法獲取當(dāng)前時(shí)間加減幾分鐘對(duì)應(yīng)的時(shí)刻
2019-08-10 09:50
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè) AddMinutes方法,此方法用于指定時(shí)間對(duì)象往后多少分鐘或者往前多少分鐘對(duì)應(yīng)的時(shí)刻,即指定時(shí)間對(duì)象加減多少分鐘對(duì)應(yīng)的時(shí)間點(diǎn)對(duì)象。此文將介紹當(dāng) 前時(shí)間點(diǎn)加減幾分鐘后對(duì)應(yīng)的時(shí)間對(duì)象的代碼實(shí)現(xiàn)。
AddMinutes方法的簽名為:DateTime AddMinutes(double value);,參數(shù)value為需要為加減的時(shí)間分鐘數(shù),可以為正數(shù)也可以為負(fù)數(shù),當(dāng)為正數(shù)的情況下,則為往后計(jì)算。若為負(fù)數(shù),則表示以計(jì)算時(shí)間點(diǎn)為基準(zhǔn)點(diǎn)向前計(jì)算。
例如獲取當(dāng)前時(shí)間的加上2分鐘后的時(shí)間點(diǎn)(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddMinutes(2);
運(yùn)行結(jié)果為:result 結(jié)果為2019年8月10日 9:17:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的往前130分鐘對(duì)應(yīng)的時(shí)間點(diǎn),則可以使用下列代碼。
DateTime result = DateTime.Now.AddMonths(-130);
(6)加減多少秒操作:AddSeconds方法,具體參考C#使用AddSeconds方法獲取當(dāng)前時(shí)間加減多少秒數(shù)后對(duì)應(yīng)的時(shí)間。
C#使用AddSeconds方法獲取當(dāng)前時(shí)間加減多少秒數(shù)后對(duì)應(yīng)的時(shí)間
2019-08-10 09:56
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè) AddSeconds方法,此方法用于計(jì)算指定時(shí)間對(duì)象往后多少秒對(duì)應(yīng)的時(shí)間點(diǎn)或者往前多少秒對(duì)應(yīng)的時(shí)間點(diǎn),即指定時(shí)間對(duì)象加減多少秒數(shù)對(duì)應(yīng)的時(shí)間點(diǎn)對(duì) 象。此文將以當(dāng)前時(shí)間加減多少秒后對(duì)應(yīng)的時(shí)間點(diǎn)為例講解。
AddSeconds方法的簽名為:DateTime AddSeconds(double value);,參數(shù)value為需要為加減的秒數(shù)信息,當(dāng)value取值為負(fù)數(shù)時(shí)候,則是往前計(jì)算多少秒前的時(shí)間點(diǎn),可以理解為時(shí)間的減法。
例如獲取當(dāng)前時(shí)間的加上60秒后對(duì)應(yīng)的時(shí)間(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddSeconds(60);
運(yùn)行結(jié)果為:result 結(jié)果為2019年8月10日 9:16:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的往前60秒對(duì)應(yīng)的時(shí)間點(diǎn),則可以使用下列代碼。
DateTime result = DateTime.Now.AddSeconds(-60);
C#使用AddDays方法獲取當(dāng)前日期前一天
2019-08-10 09:26
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,在DateTime類(lèi)中有一個(gè)方法 AddDays方法,此方法主要是將指定天數(shù)加到對(duì)應(yīng)的DateTime對(duì)象算,一般用來(lái)計(jì)算某個(gè)時(shí)間的前幾天或者后幾天。AddDays方法簽名為 DateTime AddDays(double value),參數(shù)value代表需要加減的天數(shù),可以為雙精度double類(lèi)型小數(shù)。此文將以此來(lái)介紹計(jì)算當(dāng)前時(shí)間前一天。
在AddDays方法中,傳入的參數(shù)可為正數(shù)也可為負(fù)數(shù),如果是負(fù)數(shù),則是返回計(jì)算時(shí)間之前的某個(gè)日期時(shí)間,可以理解為時(shí)間減法。
例如獲取當(dāng)前時(shí)間的前一天的這個(gè)時(shí)間點(diǎn)(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime result = DateTime.Now.AddDays(-1);//獲取當(dāng)前時(shí)間的前一天
運(yùn)行結(jié)果為:result 結(jié)果為2019年8月9日 9:15:00。符合實(shí)際情況。
如果要獲取當(dāng)前時(shí)間的前半天時(shí)間,則傳入?yún)?shù)0.5即可,代碼如下:
DateTime result = DateTime.Now.AddDays(-0.5);//獲取當(dāng)前時(shí)間的前半天
C#獲取當(dāng)前月的天數(shù)信息
2019-08-10 09:18
在C#語(yǔ)言中,DateTime.Now指的是程序當(dāng)前時(shí)間,通過(guò)DateTime.Now變量下的屬性 Year可獲取到當(dāng)前年,Month可獲取到當(dāng)前月,可以使用DateTime.DaysInMonth方法來(lái)獲取當(dāng)前月或者指定年份月的天數(shù)信 息,DaysInMonth方法簽名為int DaysInMonth(int year, int month),參數(shù)year代表年,參數(shù)month代表月。
例如獲取當(dāng)前時(shí)間的當(dāng)前月天數(shù)(程序運(yùn)行時(shí)間為:2019/8/10 9:15:00),編寫(xiě)代碼如下:
DateTime nowTime = DateTime.Now;
int year = nowTime.Year;//獲取當(dāng)前年
int month = nowTime.Month;//獲取當(dāng)前月
int monthDays = DateTime.DaysInMonth(year, month);
運(yùn)行結(jié)果為:monthDays=31。符合實(shí)際情況。
C#中獲取某一個(gè)年份的天數(shù)
2019-08-10 00:32
在C#中,DateTime是用來(lái)表示時(shí)間的類(lèi),從DateTime.Now中可以獲取當(dāng)前所在年份。此文 將介紹如果給定一個(gè)具體年份,如何通過(guò)C#語(yǔ)言來(lái)獲取到該年有多少天。最直接的例子為獲取當(dāng)前年份的天數(shù)。在這里主要使用到了 DateTime.IsLeapYear方法,DateTime.IsLeapYear方法是用來(lái)判斷閏年的內(nèi)置方法。
下面實(shí)例是獲取當(dāng)前年(即2019年)的總天數(shù)的代碼:
? ?int year = DateTime.Now.Year;//DateTime.Now表示當(dāng)前時(shí)間,從DateTime.Now時(shí)間中獲取年份屬性Year
? ? ? ? ? ? int totalDay = 365;//默認(rèn)為非閏年
? ? ? ? ? ? if (DateTime.IsLeapYear(year))
? ? ? ? ? ? {
? ? ? ? ? ? ? ? totalDay = 366;//DateTime.IsLeapYear判斷結(jié)果為閏年,有366天
? ? ? ? ? ? }從運(yùn)行結(jié)果來(lái)看: totalDay = 365。
C#中獲取某一個(gè)日期是星期幾
2019-08-10 00:24
在C#中,DateTime是用來(lái)表示時(shí)間的類(lèi),DateTime.Now可以獲取當(dāng)前時(shí)間。如果給定一個(gè) 日期,在C#中如何獲取該日期是星期幾呢,例如獲取當(dāng)前日期時(shí)間,并計(jì)算出當(dāng)前日期是星期幾,此功能可以通過(guò)DateTime的ToString方法來(lái)實(shí) 現(xiàn),指定格式化參數(shù)為dddd即可實(shí)現(xiàn)。
下面實(shí)例是獲取當(dāng)前日期是星期幾的實(shí)例代碼:
string xingQiJi = DateTime.Now.ToString("dddd");
從運(yùn)行結(jié)果來(lái)看:xingQiJi=“星期六”。正好符合當(dāng)前博文發(fā)表時(shí)間的實(shí)際結(jié)果。
到此這篇關(guān)于C#中DateTime的時(shí)間加減法操作小結(jié)的文章就介紹到這了,更多相關(guān)C# DateTime的時(shí)間加減法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在.NET?WebService中跨域CORS問(wèn)題的解決方案
在現(xiàn)代的Web應(yīng)用程序開(kāi)發(fā)中,跨域資源共享(Cross-Origin?Resource?Sharing,?CORS)問(wèn)題是開(kāi)發(fā)者經(jīng)常遇到的一個(gè)挑戰(zhàn),在這篇博客中,我們將深入探討如何在?.NET?WebService?中解決CORS問(wèn)題,幫助開(kāi)發(fā)者順利實(shí)現(xiàn)跨域請(qǐng)求,需要的朋友可以參考下2024-05-05
C# 打印網(wǎng)頁(yè)不顯示頁(yè)眉頁(yè)腳的實(shí)現(xiàn)方法
這篇文章主要介紹了C# 打印網(wǎng)頁(yè)不顯示頁(yè)眉頁(yè)腳的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01
C#實(shí)現(xiàn)從位圖到布隆過(guò)濾器的方法
布隆過(guò)濾器(Bloom filter)是一種特殊的 Hash Table,能夠以較小的存儲(chǔ)空間較快地判斷出數(shù)據(jù)是否存在。常用于允許一定誤判率的數(shù)據(jù)過(guò)濾及防止緩存擊穿及等場(chǎng)景,本文將以 C# 語(yǔ)言來(lái)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的布隆過(guò)濾器,為簡(jiǎn)化說(shuō)明,設(shè)計(jì)得很簡(jiǎn)單,需要的朋友可以參考下2022-06-06
探秘Unity游戲開(kāi)發(fā)中的狀態(tài)設(shè)計(jì)模式
這篇文章主要介紹了探秘Unity游戲開(kāi)發(fā)中的狀態(tài)設(shè)計(jì)模式,狀態(tài)模式是Unity游戲開(kāi)發(fā)中常用的一種設(shè)計(jì)模式,可以幫助開(kāi)發(fā)者更好地管理游戲?qū)ο鬆顟B(tài),提高游戲的可維護(hù)性和可擴(kuò)展性2023-05-05
adonet基礎(chǔ)示例分享(adonet連接數(shù)據(jù)庫(kù))
這篇文章主要介紹了adonet基礎(chǔ)示例分享(adonet連接數(shù)據(jù)庫(kù)),需要的朋友可以參考下2014-04-04
C#實(shí)現(xiàn)泛型List分組輸出元素的方法
這篇文章主要介紹了C#實(shí)現(xiàn)泛型List分組輸出元素的方法,涉及C#針對(duì)List的遍歷、排序、輸出等相關(guān)操作技巧,需要的朋友可以參考下2017-12-12
C#學(xué)習(xí)基礎(chǔ)概念二十五問(wèn)
C#學(xué)習(xí)基礎(chǔ)概念二十五問(wèn)...2007-04-04

