C 時間處理

2021-04-13 08:00:43 字數 2555 閱讀 8169

一、取某月的最後一天

法一、使用算出該月多少天,年+月+加上多少天即得,舉例取今天這個月的最後一天

private void getlastdateformonth(datetime dtstart,out datetime dtend)

法二、取出下月的第一天減去一天便是這個的最後一天

private void getlastdateformonth(datetime dtstart,out datetime dtend)

{int dtyear,dtmonth;

dtstart = datetime.now.addmonths(1);

dtyear  = dtstart.year;

dtmonth = dtstart.month;

dtend = convert.todatetime(dtyear.tostring()+"-"+dtmonth.tostring()+"-"+"1").adddays(-1);

二、時間差的計算

法一、使用timespan ,同時也介紹一下timespan的用法

相關屬性和函式

add:與另乙個timespan值相加。

days:返回用天數計算的timespan值。

duration:獲取timespan的絕對值。

hours:返回用小時計算的timespan值

milliseconds:返回用毫秒計算的timespan值。

minutes:返回用分鐘計算的timespan值。

negate:返回當前例項的相反數。

seconds:返回用秒計算的timespan值。

subtract:從中減去另乙個timespan值。

ticks:返回timespan值的tick數。

totaldays:返回timespan值表示的天數。

totalhours:返回timespan值表示的小時數。

totalmilliseconds:返回timespan值表示的毫秒數。

totalminutes:返回timespan值表示的分鐘數。

totalseconds:返回timespan值表示的秒數。 

簡單示例:

datetime d1 =new datetime(2004,1,1,15,36,05);

datetime d2 =new datetime(2004,3,1,20,16,35);

timespan d3 = d2.subtract(d1);

lbtime.text = "相差:"

+d3.days.tostring()+"天"

+d3.hours.tostring()+"小時"

+d3.minutes.tostring()+"分鐘"

+d3.seconds.tostring()+"秒";

法二、使用sql中的datediff函式

使用方法:datediff(datepart,startdate,enddate)

它能幫你取出你想要的各種形式的時間差,如相隔多少天,多少小時,多少分鐘等,具體格式如下:

日期部分

縮寫yearyy, yyyy

quarterqq, q

monthmm, m

dayofyeardy, y

daydd, d

weekwk, ww

hourhh

minutemi, n

secondss, s

millisecondms

如:datediff(mi,dtoptime,dtend)  便能取出他們之間時間差的分鐘總數,已經幫你換算好了,對於要求規定單位,時、分、秒特別有用

計算兩個日期之間相差的工作日天數**載:http://wrfwjn.blog.hexun.com/482517_d.html

/// 

///  計算兩個日期之間相差的工作日天數

/// 

///  開始日期

///  結束日期

///  int

public  int calculateworkingdays(datetime  dtstart,  datetime dtend)

{int  count=0;

for(datetime  dttemp=dtstart;dttemp

c 時間處理

struct tm 這是乙個結構體,包括了時間的各個屬性年月日,時分秒 time time t t 獲取從1900年到現在經過的毫秒數,或者也可以這麼用time t t time null localtime tt 其中tt為time t型別的變數,localtime返回乙個指向tm型別變數的指標 ...

時間超限問題處理(c )

c 中 如果時間超上限 做題上 考慮關於二進位制的方法 比如說 find your present 2 這道題 可以用異或運算 來發現不重複數 對於動態規劃 狀態壓縮發面 方面應用更多 比如說poj 1185 炮兵布陣 其中地圖用二進位制表示 十進位制儲存 運算起來十分方便 輸入輸出 c 的 cin...

C 時間處理相關函式

返回兩個時間中的值較大的那個 public static datetime getmaxdatetime datetime dt1,datetime dt2 返回兩個時間中的值較小的那個 public static datetime getmindatetime datetime dt1,datet...