Rất đơn giản bằng cách sử dụng định dạng chuỗi
trên .ToSTring("") :
nếu bạn sử dụng "hh" - >> Giờ, sử dụng đồng hồ 12 giờ từ 01 đến 12.
nếu bạn sử dụng "HH" - >> Giờ, sử dụng đồng hồ 24 giờ từ 00 đến 23.
nếu bạn thêm "tt" - >> Bộ chỉ định Am / Pm.
miễn chuyển đổi từ 23:12 đến 11:12 Pm:
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("hh:mm tt");
var res2 = d.ToString("HH:mm");
Console.WriteLine(res);
Console.WriteLine(res2);
Console.Read();
Chờ một chút, đó không phải là tất cả những gì bạn cần quan tâm đến một thứ khác là Văn hóa hệ thống vì cùng một mã được thực thi trên windows với ngôn ngữ khác đặc biệt với ngôn ngữ văn hóa difrent sẽ tạo ra kết quả khác với cùng mã
Ví dụ về các cửa sổ được đặt thành văn hóa ngôn ngữ Ả Rập sẽ hiển thị như vậy:
// 23:12 م
م có nghĩa là Buổi tối (chữ cái đầu tiên của مساء).
trong văn hóa hệ thống khác tùy thuộc vào những gì được đặt trên tùy chọn ngôn ngữ và khu vực của cửa sổ, nó sẽ hiển thị // 23:12 du.
bạn có thể thay đổi giữa các định dạng khác nhau trên bảng điều khiển windows trong khu vực và ngôn ngữ của windows -> định dạng hiện tại (combobox) và thay đổi ... áp dụng nó để xây dựng lại (thực thi) ứng dụng của bạn và xem tôi đang nói gì.
vì vậy ai có thể buộc tôi phải hiển thị các Từ Am và Pm bằng tiếng Anh nếu văn hóa của hệ thống hiện tại không được đặt thành tiếng Anh?
dễ dàng chỉ bằng cách thêm hai dòng: ->
bước đầu tiên thêm using System.Globalization;vào đầu mã của bạn
và sửa đổi mã Trước đó thành như thế này:
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("HH:mm tt", CultureInfo.InvariantCulture);
InvariantCulture => sử dụng Định dạng tiếng Anh mặc định.
một câu hỏi khác tôi muốn đặt chiều bằng tiếng Ả Rập hoặc ngôn ngữ cụ thể, ngay cả khi tôi sử dụng cửa sổ được đặt thành định dạng khu vực tiếng Anh (hoặc ngôn ngữ khác)?
Thận trọng đối với Exemple tiếng Ả Rập:
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("HH:mm tt", CultureInfo.CreateSpecificCulture("ar-AE"));
cái này sẽ hiển thị // 23:12 م
nếu hệ thống của tôi được đặt thành định dạng vùng tiếng Anh. bạn có thể thay đổi "ar-AE" nếu bạn muốn sang định dạng ngôn ngữ khác. có một danh sách của từng ngôn ngữ và định dạng của nó.
ví dụ: ar ar-SA Ả Rập ar-BH ar-BH Ả Rập (Bahrain) ar-DZ ar-DZ Ả Rập (Algeria) ar-EG ar-EG Ả Rập (Ai Cập)
datepicker value + TimeofDay:?