Chào các bạn !
Trong bài này csharpcanban.com sẽ hướng dẫn các bạn làm việc với Date và Time trong C#.
C# .Net cung cấp lớp DateTime để chúng ta làm việc với thời gian, lớp DateTime cung cấp nhiều phương thức và thuộc tính hữu ích để tính toán ngày và thời gian.
Phạm vi của DateTime là từ 01/01/0001 12:00:00 AM đến 31/12/9999 11:59:59 PM.
Nội dung
Hàm DateTime trả về các giá trị ngày và giờ khác nhau.
Ta hãy xem ví dụ dưới đây:
DateTime d1 = DateTime.Now; listBox1.Items.Add("Năm: " + d1.Year); listBox1.Items.Add("Tháng: " + d1.Month); listBox1.Items.Add("Ngày: " + d1.Day); listBox1.Items.Add("Ngày trong tuần: " + d1.DayOfWeek); listBox1.Items.Add("Ngày trong năm: " + d1.DayOfYear); listBox1.Items.Add("Giờ: " + d1.Hour); listBox1.Items.Add("Thời gian trong ngày: " + d1.TimeOfDay); listBox1.Items.Add("Phút: " + d1.Minute);
Như vậy, để sử dụng lớp DateTime thì việc đầu tiên là ta cần khởi tạo đối tượng thông qua câu lệnh
DateTime d1 = DateTime.Now;
Tiếp theo ta có thể sử dụng các thuộc tính của nó như: Year, Month, Day, DayOfWeek, DayOfYear, Hour, TimeOfDay hoặc Minute để lấy ra các giá trị thời gian khác nhau.
Hàm DateTime dùng để định dạng và tách thời gian:
Sau đây là các cách khác nhau để định dạng và phân tích ngày và thời gian.
listBox1.Items.Add(DateTime.Now.ToString()); listBox1.Items.Add(DateTime.Now.ToShortDateString()); listBox1.Items.Add(DateTime.Now.ToLongDateString()); listBox1.Items.Add(DateTime.Now.ToShortTimeString()); listBox1.Items.Add(DateTime.Now.ToLongTimeString());
Cộng thêm hoặc bớt ngày tính từ ngày và thời gian hiện tại
Lớp DateTime trong C# còn cung cấp một số phương thức để cộng thêm hoặc trừ ngày và thời gian từ đối tượng DateTime. Ngày được cộng hoặc trừ tính từ ngày hiện tại.
Ví dụ dưới đây là trừ đi 2 ngày tính từ ngày hiện tại.
DateTime dt = DateTime.Today.AddDays(-2); string strDate = dt.ToString("dd / MM / yy"); listBox1.Items.Add(strDate);
Ví dụ dưới đây là thêm 1 ngày tính từ ngày hiện tại.
DateTime tomorrow = DateTime.Today.AddDays(1); string strDate = tomorrow.ToString("dd / MM / yy"); listBox1.Items.Add(strDate);
Ví dụ dưới đây lại tính thời gian sau 30 phút (thêm phút vào thời gian hiện tại.)
DateTime later = DateTime.Now.AddMinutes(30); string strDate = later.ToString("dd / MM / yy, hh : mm "); listBox1.Items.Add(strDate);
Tính tổng số ngày giữa hai ngày
Để có được số ngày giữa hai ngày với định dạng DateTime, chúng ta cần sử dụng đối tượng TimeSpan. Thực hiện như sau:
DateTime d1 = DateTime.Now.AddDays(6); DateTime d2 = DateTime.Now.AddDays(-2); TimeSpan t = d1 – d2; double diff = t.TotalDays;
Lời kết: Hy vọng với những kiến thức trên đây, csharpcanban.com đã giúp các bạn có cách nhìn tổng thể về các cách trích xuất thời gian trong C#. Hãy đặt lời bình phía dưới, chúng tôi sẽ trả lời và hướng dẫn các bạn chi tiết hơn.