日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 综合教程 >内容正文

综合教程

【C#】日期格式转换

發(fā)布時(shí)間:2023/12/19 综合教程 29 生活家
生活随笔 收集整理的這篇文章主要介紹了 【C#】日期格式转换 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

C#里內(nèi)置的DateTime基本上都可以實(shí)現(xiàn)這些功能,巧用DateTime會(huì)使你處理這些事來(lái)變輕松多了
今天
DateTime.Now.Date.ToShortDateString();
昨天,就是今天的日期減一
DateTime.Now.AddDays(-1).ToShortDateString();
明天,同理,加一
DateTime.Now.AddDays(1).ToShortDateString();

本周(要知道本周的第一天就得先知道今天是星期幾,從而得知本周的第一天就是幾天前的那一天,要注意的是這里的每一周是從周日始至周六止
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
如果你還不明白,再看一下中文顯示星期幾的方法就應(yīng)該懂了
由于DayOfWeek返回的是數(shù)字的星期幾,我們要把它轉(zhuǎn)換成漢字方便我們閱讀,有些人可能會(huì)用switch來(lái)一個(gè)一個(gè)地對(duì)照,其實(shí)不用那么麻煩的
string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];

上周,同理,一個(gè)周是7天,上周就是本周再減去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();
下周
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();
本月,很多人都會(huì)說(shuō)本月的第一天嘛肯定是1號(hào),最后一天就是下個(gè)月一號(hào)再減一天。當(dāng)然這是對(duì)的
一般的寫法
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();//最后一天

巧用C#里ToString的字符格式化更簡(jiǎn)便
DateTime.Now.ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();

上個(gè)月,減去一個(gè)月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
下個(gè)月,加去一個(gè)月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
7天后
DateTime.Now.Date.ToShortDateString();
DateTime.Now.AddDays(7).ToShortDateString();
7天前
DateTime.Now.AddDays(-7).ToShortDateString();
DateTime.Now.Date.ToShortDateString();

本年度,用ToString的字符格式化我們也很容易地算出本年度的第一天和最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
上年度,不用再解釋了吧
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
下年度
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();

本季度,很多人都會(huì)覺(jué)得這里難點(diǎn),需要寫個(gè)長(zhǎng)長(zhǎng)的過(guò)程來(lái)判斷。其實(shí)不用的,我們都知道一年四個(gè)季度,一個(gè)季度三個(gè)月
首先我們先把日期推到本季度第一個(gè)月,然后這個(gè)月的第一天就是本季度的第一天了
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
同理,本季度的最后一天就是下季度的第一天減一
DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
下季度,相信你們都知道了。。。。收工
DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
上季度
DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

======簡(jiǎn)單補(bǔ)充======

c#中如何獲取時(shí)間!
1、DateTime 數(shù)字型
System.DateTime currentTime=new System.DateTime();
1.1 取當(dāng)前年月日時(shí)分秒
currentTime=System.DateTime.Now;
1.2 取當(dāng)前年
int 年=currentTime.Year;
1.3 取當(dāng)前月
int 月=currentTime.Month;
1.4 取當(dāng)前日
int 日=currentTime.Day;
1.5 取當(dāng)前時(shí)
int 時(shí)=currentTime.Hour;
1.6 取當(dāng)前分
int 分=currentTime.Minute;
1.7 取當(dāng)前秒
int 秒=currentTime.Second;
1.8 取當(dāng)前毫秒
int 毫秒=currentTime.Millisecond;
(變量可用中文)

1.9 取中文日期顯示——年月日時(shí)分
string strY=currentTime.ToString("f"); //不顯示秒

1.10 取中文日期顯示_年月
string strYM=currentTime.ToString("y");

1.11 取中文日期顯示_月日
string strMD=currentTime.ToString("m");

1.12 取中文年月日
string strYMD=currentTime.ToString("D");

1.13 取當(dāng)前時(shí)分,格式為:14:24
string strT=currentTime.ToString("t");

1.14 取當(dāng)前時(shí)間,格式為:2003-09-23T14:46:48
string strT=currentTime.ToString("s");

1.15 取當(dāng)前時(shí)間,格式為:2003-09-23 14:48:30Z
string strT=currentTime.ToString("u");

1.16 取當(dāng)前時(shí)間,格式為:2003-09-23 14:48
string strT=currentTime.ToString("g");

1.17 取當(dāng)前時(shí)間,格式為:Tue, 23 Sep 2003 14:52:40 GMT
string strT=currentTime.ToString("r");

1.18獲得當(dāng)前時(shí)間 n 天后的日期時(shí)間
DateTime newDay = DateTime.Now.AddDays(100);

string strT = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

System.DateTime currentTime=new System.DateTime();
currentTime=System.DateTime.Now; //取當(dāng)前年月日時(shí)分秒
string Y=currentTime.Year.ToString(); //取當(dāng)前年
string M=currentTime.Month.ToString(); //取當(dāng)前月
string D=currentTime.Day.ToString(); //取當(dāng)前日
string T=currentTime.Hour.ToString(); //取當(dāng)前時(shí)
string MM=currentTime.Minute.ToString(); //取當(dāng)前分
string S=currentTime.Second.ToString(); //取當(dāng)前秒
string SS=currentTime.Millisecond.ToString(); //取當(dāng)前毫秒
string FileName=Y+M+D+T+MM+S+SS+".Html"; //聯(lián)接后,得到長(zhǎng)文件名

總結(jié)

以上是生活随笔為你收集整理的【C#】日期格式转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。