Xử lý kiểu dữ liệu DateTime trong C#

Trong bài viết này ta sẽ tìm hiểu về các đối tượng Ngày, tháng trong C#. Có thể xem Datetime là một kiểu dữ liệu trong c#, thư viện hỗ trợ các method cho việc xử lý truy xuất thời gian trên máy tính như: Lấy thời gian, ngày tháng hiện tại,ngày hôm qua, ngày mai, ngày này năm trước… Chắc hẳn bạn hình dung được những công dụng khi có thể truy xuất thời gian là như thế nào! Có thể áp dụng cho nhiều ứng dụng khác nhau có liên quan đến ngày tháng như: Ứng dụng nhật ký, lịch biểu, hẹn giờ máy tính…

1. LẤY NGÀY THÁNG NĂM HIỆN TẠI, NGÀY HÔM QUA, NGÀY MAI:


Ở ví dụ bên dưới ta sẽ lấy ngày ngày giờ chính xác tại thời điểm chạy chương trình thông qua hàm Datetime.Now(); Thời gian được lấy theo thời gian của hệ thống, định dạng ngày giờ cũng theo định dạng của hệ thống. Với hàm Datetime.Today(); sẽ trả về ngày tháng hiện tại còn thời gian sẽ đưa về 0h ngày hôm đó. Để lấy được ngày, tháng, năm của ngày hôm qua ta dùng Datetime.Today().AddDays(-1); Nghĩa là lấy lùi 1 ngày so với ngày hiện tại. Nhưng ta thấy trong kết quả còn chứa 12:00:00 AM hoặc 00:00:00 là thời gian bắt đầu ngày; Giá trị này chắc hẳn không ai cần dùng tới nên ta có thể xử lý cắt chuỗi thông qua các hàm hỗ trợ của Regular Expression. Tương tự như vậy để tính ngày tháng của ngày mai. Trở lại phương thức: Datetime.Today().AddDays(); dùng để thêm bớt ngày so với ngày hiện tại, ngoài ra thư viện còn hỗ trợ các phương thức AddMonths(), AddYears(), AddHours()… để hỗ trợ cho việc tính toán trên ngày tháng được tốt hơn.

001-date-time-microsofttech.net

2. TRÍCH XUẤT NGÀY THÁNG TỪ CHUỖI – TÍNH TOÁN NGÀY THÁNG


Trong ví dụ bên dưới ta sẽ tìm hiểu về cách trích xuất giá trị ngày tháng từ một chuỗi thông quan method Parse(); Ban đầu ta tạo chuỗi someDate với giá trị “03-03-2008″ sau đó dùng method parse để trích xuất giá trị ngày tháng và gán giá trị đó cho starDate. Sau đó lấy giá trị của ngày hiện tại và tính tổng số ngày từ 03-03-2008 cho đến ngày hiện tại (ngày giờ hệ thống máy hiện tại là: 03 tháng 06 – 2011. Chắc xem đoạn code nhỏ bên dưới bạn cũng có thể hiểu hết ý nghĩa của từng dòng nên tôi sẽ không giải thích thêm dài dòng.

002-date-time-microsofttech.net

Nguồn http://microsofttech.net

Leave a comment