Làm cách nào để lấy ngày hôm nay trong C # ở định dạng mm / dd / yyyy?


105

Làm cách nào để lấy ngày hôm nay trong C # ở định dạng mm / dd / yyyy?

Tôi cần đặt một biến chuỗi thành ngày hôm nay (tốt nhất là không có năm), nhưng có một cách tốt hơn là xây dựng nó theo tháng - / - ngày từng phần một.

BTW: Tôi đang ở Mỹ nên M / dd sẽ chính xác, ví dụ ngày 11 tháng 9 là ngày 11 tháng 9.

Lưu ý: một câu trả lời từ kronoz đã được đưa ra trong cuộc thảo luận về quốc tế hóa, và tôi nghĩ rằng nó đủ tuyệt vời để đề cập vì tôi cũng không thể biến nó thành câu trả lời 'được chấp nhận'.

câu trả lời của kronoz


4
M / dd sẽ hiển thị ngày 1 tháng 1 là ngày 1 tháng 1. Bạn muốn 1/01 hay chỉ 1/1?
Joel Coehoorn

Câu trả lời:



23

Không phải là quá khủng khiếp, nhưng nếu bạn đang quốc tế hóa mã, có thể hữu ích hơn nếu có cơ sở để có được ngày ngắn cho một nền văn hóa nhất định, ví dụ: -

using System.Globalization;
using System.Threading;

...

var currentCulture = Thread.CurrentThread.CurrentCulture;
try {
  Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-us");
  string shortDateString = DateTime.Now.ToShortDateString();
  // Do something with shortDateString...
} finally {
  Thread.CurrentThread.CurrentCulture = currentCulture;
}

Mặc dù rõ ràng cách tiếp cận "m / dd / yyyy" gọn gàng hơn đáng kể !!





8
DateTime.Now.Date.ToShortDateString()

là văn hóa cụ thể.

Tốt nhất là gắn bó với:

DateTime.Now.ToString("d/MM/yyyy");

5
DateTime.Now.Date.ToShortDateString()

Tôi nghĩ rằng đây là những gì bạn đang tìm kiếm


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.