zoukankan
html css js c++ java
C#关于日期月天数和一年有多少周及某年某周时间段的计算
/**/
///
<summary>
///
当前月有多少天
///
</summary>
///
<param name="y"></param>
///
<param name="m"></param>
///
<returns></returns>
public
static
int
HowMonthDay(
int
y,
int
m)
{
int
mnext;
int
ynext;
if
(m
<
12
)
{
mnext
=
m
+
1
;
ynext
=
y;
}
else
{
mnext
=
1
;
ynext
=
y
+
1
;
}
DateTime dt1
=
System.Convert.ToDateTime(y
+
"
-
"
+
m
+
"
-1
"
);
DateTime dt2
=
System.Convert.ToDateTime(ynext
+
"
-
"
+
mnext
+
"
-1
"
);
TimeSpan diff
=
dt2
-
dt1;
return
diff.Days;
}
/**/
///
<summary>
///
得到一年中的某周的起始日和截止日
///
年 nYear
///
周数 nNumWeek
///
周始 out dtWeekStart
///
周终 out dtWeekeEnd
///
</summary>
///
<param name="nYear"></param>
///
<param name="nNumWeek"></param>
///
<param name="dtWeekStart"></param>
///
<param name="dtWeekeEnd"></param>
public
static
void
GetWeek(
int
nYear,
int
nNumWeek,
out
DateTime dtWeekStart,
out
DateTime dtWeekeEnd)
{
DateTime dt
=
new
DateTime(nYear,
1
,
1
);
dt
=
dt
+
new
TimeSpan((nNumWeek
-
1
)
*
7
,
0
,
0
,
0
);
dtWeekStart
=
dt.AddDays(
-
(
int
)dt.DayOfWeek
+
(
int
)DayOfWeek.Monday);
dtWeekeEnd
=
dt.AddDays((
int
)DayOfWeek.Saturday
-
(
int
)dt.DayOfWeek
+
1
);
}
/**/
///
<summary>
///
求某年有多少周
///
返回 int
///
</summary>
///
<param name="strYear"></param>
///
<returns>
int
</returns>
public
static
int
GetYearWeekCount(
int
strYear)
{
string
returnStr
=
""
;
System.DateTime fDt
=
DateTime.Parse(strYear.ToString()
+
"
-01-01
"
);
int
k
=
Convert.ToInt32(fDt.DayOfWeek);
//
得到该年的第一天是周几
if
(k
==
1
)
{
int
countDay
=
fDt.AddYears(
1
).AddDays(
-
1
).DayOfYear;
int
countWeek
=
countDay
/
7
+
1
;
return
countWeek;
}
else
{
int
countDay
=
fDt.AddYears(
1
).AddDays(
-
1
).DayOfYear;
int
countWeek
=
countDay
/
7
+
2
;
return
countWeek;
}
}
/**/
///
<summary>
///
求当前日期是一年的中第几周
///
</summary>
///
<param name="date"></param>
///
<returns></returns>
public
static
int
WeekOfYear(DateTime curDay)
{
int
firstdayofweek
=
Convert.ToInt32(Convert.ToDateTime(curDay.Year.ToString()
+
"
-
"
+
"
1-1
"
).DayOfWeek);
int
days
=
curDay.DayOfYear;
int
daysOutOneWeek
=
days
-
(
7
-
firstdayofweek);
if
(daysOutOneWeek
<=
0
)
{
return
1
;
}
else
{
int
weeks
=
daysOutOneWeek
/
7
;
if
(daysOutOneWeek
%
7
!=
0
)
weeks
++
;
return
weeks
+
1
;
}
}
查看全文
相关阅读:
移动端常用状态
css 动画
jQuery源码解析 -- 概述
Bearer Token && JWT --- 深入理解令牌机制
字符串 ----> switch-case 语句
Vuejs选项: provide/inject
本地windows系统-》windows云服务器文件上传
CSS基础点
函数的调用 与 this
两个有意思的网站
原文地址:https://www.cnblogs.com/skyblue/p/967455.html
最新文章
(干货)微信小程序之上传图片和图片预览
手摸手教你微信小程序开发之自定义组件
前端开发必备网站
博客抄袭现象
使用CodeMirror插件遇到的问题
谈谈我对C# 多态的理解
WPF 学习(一)
聊聊JavaScript在工作中常用的方法(一)
计算机的组装
(C#、JavaScript)面向对象的程序设计
热门文章
ADO.NET 的使用(二)
ADO.NET 的使用(一)
函数的扩展
数值
let和const命令
小记
H5地理定位
渐变色文字
单行文字溢出和多行文字溢出
移动端边框1px
Copyright © 2011-2022 走看看