如何在不更改格式的情况下返回日期时间
本文关键字:情况下 返回 日期 时间 格式 | 更新日期: 2023-09-27 18:33:19
我有日期时间列表,我想获取日期时间,并采用某种格式显示小时分钟秒。例如,我有 4:32 PM 22 十二月 2015 来自 en-US 文化,如果我使用 bg-BG,那么返回 16:32 22 Декември(平均十二月)2015。井是返回 4:32 22 Декември 2015.
这是我的简单代码。
List<DateTime> xAxises = SetListOfDateTimes();
var culture = Thread.CurrentThread.CurrentCulture;
for (int i = 1; i <= xAxises.Count; i++)
{
string someTime = xAxises.ElementAt(i - 1).ToString("hh:mm:ss tt", Thread.CurrentThread.CurrentCulture = culture);
string anotherTime = xAxises.ElementAt(i - 1).ToString("ddd, dd MMMM hh:mm:ss tt", Thread.CurrentThread.CurrentCulture = culture);
string thirdTime = xAxises.ElementAt(i - 1).ToString("dd MMMM yyyy", Thread.CurrentThread.CurrentCulture = culture);
string fourthTime = xAxises.ElementAt(i - 1).ToString("MMMM yyyy", Thread.CurrentThread.CurrentCulture = culture);
}
我真正的问题是我很少有 bg-BG 格式的日期时间,someTime
以 en-US 格式返回。当DateTime
是21:22:30时,someTime
是9:22:30。我想成为21:22:30。我把tt
因为有可能我的应用程序在美国使用,如果是文化在en-US
。
任何知道如何正确返回具有当前文化的日期时间的人。
好吧
,如果你说你想要 12 小时的格式,你明白了。请尝试HH
而不是hh
(请参阅 msdn)。
或者ToLongTimeString()
.至少还有更多这样的版本,long
和short
版本的time
和日期。
顺便说一句,DateTime.Now.ToLongDateString()
给了我Freitag, 5. Februar 2016
,而无需明确指定文化。
如果要获取24小时格式的时间字符串,则应在ToString函数中使用时间格式"HH:mm:ss"。您可以在此处阅读有关日期和时间格式的更多信息:https://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx