首页 > 编程 > C# > 正文

c# datetime方法应用介绍

2020-01-24 03:38:57
字体:
来源:转载
供稿:网友
随着工作的需要,也算是写一个为自己留着的帮助文档吧。
System.DateTime currentTime=new System.DateTime(); //实例化一个 datetime 对象
当前 年月日时分秒 currentTime=System.DateTime.Now;
当前 年 int 年=currentTime.Year;
当前 月 int 月=currentTime.Month;
当前 日 int 日=currentTime.Day;
当前 时 int 时=currentTime.Hour;
当前 分 int 分=currentTime.Minute;
当前 秒 int 秒=currentTime.Second;
当前 毫秒 int 毫秒=currentTime.Millisecond; (变量可用中文)
DateTime.Now.ToString();//获取当前系统时间 完整的日期和时间
DateTime.Now.ToLongDateString();//只显示日期 xxxx年xx月xx日 ,一个是长日期
DateTime.Now.ToShortDateString();//只显示日期 xxxx-xx-xx 一个是短日期
DateTime.Now.Date.ToShortDateString();//今天
DateTime.Now.AddDays(-1).ToShortDateString();//昨天
DateTime.Now.AddDays(1).ToShortDateString();//明天 
中文日期 年月日时分 string strY=currentTime.ToString("f"); //不显示秒
中文日期 年月 string strYM=currentTime.ToString("y");
中文日期 月日 string strMD=currentTime.ToString("m");
当前 年月日 格式为:2003-9-23 string strYMD=currentTime.ToString("d");
当前 时分 格式为:14:24 string strT=currentTime.ToString("t");
更多格式看 附1、2。 

//本周 (注意这里的每一周是从周日始至周六止)
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
//上周 (上周就是本周再减去7天)
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
//下周 (本周再加上7天)
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
//本月 (本月的第一天是1号,最后一天就是下个月一号再减一天)
DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天
DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天
--------------------------------------------------------------------------------
附1:datetime类型在tostring(),format的格式设置
格式字符 关联属性/说明
d  ShortDatePattern
LongDatePattern 
完整日期和时间(长日期和短时间)
FullDateTimePattern(长日期和长时间)
g  常规(短日期和短时间)
G  常规(短日期和长时间)
m、M  MonthDayPattern
r、R  RFC1123Pattern
使用当地时间的 SortableDateTimePattern(基于 ISO 8601)
t  ShortTimePattern
T  LongTimePattern
u UniversalSortableDateTimePattern 用于显示通用时间的格式
使用通用时间的完整日期和时间(长日期和长时间)
y、Y y、Y YearMonthPattern

附2:下表列出了可被合并以构造自定义模式的模式。这些模式是区分大小写的
格式字符关联属性/说明
月中的某一天。一位数的日期没有前导零。
dd  月中的某一天。一位数的日期有一个前导零。
ddd  周中某天的缩写名称,在 AbbreviatedDayNames 中定义。
dddd 周中某天的完整名称,在 DayNames 中定义。
M  月份数字。一位数的月份没有前导零。
MM  月份数字。一位数的月份有一个前导零。
MMM 月份的缩写名称,在 AbbreviatedMonthNames 中定义。
MMMM 月份的完整名称,在 MonthNames 中定义。
y  不包含纪元的年份。如果不包含纪元的年份小于 10,则显示不具有前导零的年份。
yy 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示具有前导零的年份。
yyyy 包括纪元的四位数的年份。
gg 时期或纪元。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。
h  12小时制的小时。一位数的小时数没有前导零。
hh  12 小时制的小时。一位数的小时数有前导零。
H24 小时制的小时。一位数的小时数没有前导零。 
HH 24 小时制的小时。一位数的小时数有前导零。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表