C#使用DateTime獲取日期和時間的實現(xiàn)
在C#中,DateTime類是用來處理日期和時間的類。它具有許多屬性和方法,用于操作和獲取日期和時間的不同部分。以下是DateTime類的一些常用屬性和方法。
屬性:
1、DateTime.Now:獲取當前日期和時間。
DateTime currentDateTime = DateTime.Now; Console.WriteLine(currentDateTime);//2023/11/21 21:26:04
假如我們想要獲取當前日期的某些數(shù)據(jù),我們還可以使用DateTime.Now相關(guān)的屬性和方法。
具體常用的有一下這些:
屬性
(1)DateTime.Now.Ticks返回自公元1年1月1日午夜以來經(jīng)過的以100納秒為間隔的時間單位數(shù)。
long ticks = DateTime.Now.Ticks; Console.WriteLine(ticks);//637799999912345678
(2)DateTime.Now.Year:獲取當前日期的年份部分。
int currentYear = DateTime.Now.Year; Console.WriteLine(currentYear);//2023
(3)DateTime.Now.Month:獲取當前日期的月份部分。
int currentMonth = DateTime.Now.Month; Console.WriteLine(currentMonth);//11
(4)DateTime.Now.Day:獲取當前日期的天數(shù)部分。
int currentDay = DateTime.Now.Day; Console.WriteLine(currentDay);//21
(5)DateTime.Now.DayOfWeek:獲取當前日期是星期幾。
DayOfWeek currentDayOfWeek = DateTime.Now.DayOfWeek; Console.WriteLine(currentDayOfWeek);//Monday
(6)DateTime.Now.DayOfYear:獲取當前日期是一年中的第幾天。
int currentDayOfYear = DateTime.Now.DayOfYear; Console.WriteLine(currentDayOfYear);//325
(7)DateTime.Now.TimeOfDay:獲取當前時間部分。
TimeSpan currentTimeOfDay = DateTime.Now.TimeOfDay; Console.WriteLine(currentTimeOfDay);//21:42:31.1234567
方法
(1)DateTime.Now.ToString:將當前日期時間對象轉(zhuǎn)換為字符串表示。
string currentDateTimeString = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Console.WriteLine(currentDateTimeString);//2023-11-21 21:42:31
(2)DateTime.Now.ToShortDateString:獲取當前日期的短日期字符串表示(只包含日期部分)。
string currentDateShortString = DateTime.Now.ToShortDateString(); Console.WriteLine(currentDateShortString);//2023/11/21
(3)DateTime.Now.ToShortTimeString:獲取當前時間的短時間字符串表示(只包含時間部分)。
string currentTimeShortString = DateTime.Now.ToShortTimeString(); Console.WriteLine(currentTimeShortString);//21:42
(4)DateTime.Now.AddDays:將指定的天數(shù)添加到當前日期中。
DateTime tomorrow = DateTime.Now.AddDays(1); Console.WriteLine(tomorrow);//2023/11/22 21:42:31
(5)DateTime.Now.AddMonths:將指定的月份數(shù)添加到當前日期中。
DateTime nextMonth = DateTime.Now.AddMonths(1); Console.WriteLine(nextMonth);//2023/12/21 21:42:31
(6)DateTime.Now.AddYears:將指定的年份數(shù)添加到當前日期中。
DateTime nextYear = DateTime.Now.AddYears(1); Console.WriteLine(nextYear);//2024/11/21 21:42:31
(7)DateTime.Now.AddHours:將指定的小時數(shù)添加到當前時間中。
DateTime newTime = DateTime.Now.AddHours(2); Console.WriteLine(newTime);//2023/11/21 23:42:31
(8)DateTime.Now.AddMinutes:將指定的分鐘數(shù)添加到當前時間中。
DateTime newTime = DateTime.Now.AddMinutes(15); Console.WriteLine(newTime);//2023/11/21 21:57:31
2、DateTime.Today:獲取當前日期,時間部分為午夜。
DateTime currentDate = DateTime.Today; Console.WriteLine(currentDate); //2023/11/21 00:00:00
3、DateTime.Year:獲取日期的年份部分。
DateTime date = new DateTime(2022, 11, 21); int year = date.Year; Console.WriteLine(year);//2022
4、DateTime.Month:獲取日期的月份部分。
DateTime date = new DateTime(2023, 12, 21); int month = date.Month; Console.WriteLine(month);//12
5、DateTime.Day:獲取日期的天數(shù)部分。
DateTime date = new DateTime(2023, 11, 21); int day = date.Day; Console.WriteLine(day);//21
6、DateTime.DayOfWeek:獲取日期是星期幾。
DateTime date = new DateTime(2023, 11, 21); DayOfWeek dayOfWeek = date.DayOfWeek; Console.WriteLine(dayOfWeek);//Monday
7、DateTime.DayOfYear:獲取日期是一年中的第幾天。
DateTime date = new DateTime(2023, 11, 21); int dayOfYear = date.DayOfYear; Console.WriteLine(dayOfYear);//325
8、DateTime.TimeOfDay:獲取時間部分。
DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0); TimeSpan timeOfDay = dateTime.TimeOfDay; Console.WriteLine(timeOfDay);//09:30:00
9、DateTime.Ticks:獲取自公元1年1月1日午夜以來經(jīng)過的時間刻度數(shù)。
DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0); long ticks = dateTime.Ticks; Console.WriteLine(ticks);//637737774640000000
10、DateTime.Kind:獲取日期時間對象的 DateTimeKind 值,指示其表示的時間是本地時間、協(xié)調(diào)世界時 (UTC) 還是未指定的類型。
DateTime dateTime = DateTime.Now; DateTimeKind kind = dateTime.Kind; Console.WriteLine(kind);//Local
方法:
1、DateTime.Compare:比較兩個日期的大小。
DateTime date1 = new DateTime(2023, 11, 21); DateTime date2 = new DateTime(2023, 11, 22); int result = DateTime.Compare(date1, date2); Console.WriteLine(result);//-1
2、DateTime.Equals:檢查兩個日期是否相等。
DateTime date1 = new DateTime(2023, 11, 21); DateTime date2 = new DateTime(2023, 11, 21); bool isEqual = DateTime.Equals(date1, date2); Console.WriteLine(isEqual);//True
3、DateTime.IsLeapYear:檢查指定的年份是否為閏年。
int year = 2024; bool isLeapYear = DateTime.IsLeapYear(year); Console.WriteLine(isLeapYear);//False
4、DateTime.ToString:將日期時間對象轉(zhuǎn)換為字符串表示。
DateTime dateTime = new DateTime(2023, 11, 21, 9, 30, 0); string dateString = dateTime.ToString("yyyy-MM-dd HH:mm:ss"); Console.WriteLine(dateString);//2023-11-21 09:30:00
5、DateTime.TryParse:嘗試將字符串解析為 DateTime 對象,如果解析成功返回 true,否則返回 false。
string dateString = "2023-11-21"; DateTime date; bool success = DateTime.TryParse(dateString, out date); if (success) { Console.WriteLine(date); } else { Console.WriteLine("Invalid date format"); }//2023/11/21 00:00:00
6、DateTime.Now.AddDays:將指定的天數(shù)添加到當前日期中。
DateTime tomorrow = DateTime.Now.AddDays(1); Console.WriteLine(tomorrow);//2023/11/22 21:26:04
7、DateTime.Now.AddMonths:將指定的月份數(shù)添加到當前日期中。
DateTime nextMonth = DateTime.Now.AddMonths(1); Console.WriteLine(nextMonth);//2023/12/21 21:26:04
8、DateTime.Now.AddYears:將指定的年份數(shù)添加到當前日期中。
DateTime nextYear = DateTime.Now.AddYears(1); Console.WriteLine(nextYear);//2024/11/21 21:26:04
9、DateTime.Now.AddHours:將指定的小時數(shù)添加到當前時間中。
DateTime newTime = DateTime.Now.AddHours(2); Console.WriteLine(newTime);//2023/11/21 23:26:04
10、DateTime.Now.AddMinutes:將指定的分鐘數(shù)添加到當前時間中。
DateTime newTime = DateTime.Now.AddMinutes(15); Console.WriteLine(newTime);//2023/11/21 21:41:04
以上是一些常用的。
我們看到DateTime和DateTime.Now具有不少相同的屬性和方法。但是它們并不是一樣的,并且它們是代表不同的屬性和方法。
DateTime結(jié)構(gòu)中的屬性,用于獲取給定日期的年份部分。它接受一個DateTime對象,并返回該對象表示的日期的對應屬性。
而DateTime.Now里面是屬性是靜態(tài)屬性,相當于它已經(jīng)定義好DateTime對象為當前日期的對象。
這點需要注意,得根據(jù)自己得需求進行相關(guān)調(diào)用。
到此這篇關(guān)于C#使用DateTime獲取日期和時間的實現(xiàn)的文章就介紹到這了,更多相關(guān)C# DateTime獲取日期和時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#使用ScrapySharp實現(xiàn)多線程下載操作
在現(xiàn)代互聯(lián)網(wǎng)應用中,數(shù)據(jù)抓取是一個常見的需求,無論是為了數(shù)據(jù)分析、內(nèi)容聚合還是自動化測試,ScrapySharp 是一個基于 .NET 的輕量級、高性能的網(wǎng)頁抓取庫,本文將探討如何在 C# 中使用 ScrapySharp 實現(xiàn)多線程下載策略,需要的朋友可以參考下2024-08-08程序中兩個Double類型相加出現(xiàn)誤差的解決辦法
本篇文章介紹了,程序中兩個Double類型相加出現(xiàn)誤差的解決辦法。需要的朋友參考下2013-04-04C#創(chuàng)建簡單windows窗體應用(加法器)
這篇文章主要為大家詳細介紹了C#創(chuàng)建一個簡單windows窗體應用的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03