【发布时间】:2017-01-11 10:45:21
【问题描述】:
我正在尝试将 DateTime 格式设置为 24 小时。最初我有一个 12 小时表示的字符串。我发现的所有解决方案都将DateTime 转换为字符串。
string dateString = "Mon 16 Jun 8:30 AM 2008"; // <-- Valid
string format = "dd/MM/yyyy HH:mm";
DateTime dateTime;
if (DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture,
DateTimeStyles.RoundtripKind, out dateTime))
{
DateTime dateIn24 = dateTime;// dateIn24 should be in 24 hour format
}
web.config 有什么可以做的吗?像下面这样:
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="en-GB" uiCulture="en-GB"/>
我得到了答案
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN"); 如果它的 en-US 12 小时格式 默认情况下,它将根据系统日期时间设置为 en-US
【问题讨论】:
-
我已经完成了..他们正在将日期转换为字符串..我需要输出为日期时间对象
-
DateTime 没有格式,除非您将其打印为字符串。否则,它的内部表示对于所有实例都是相同的“格式”
-
@Lijo 如果您找到了解决方案,您应该自己回答您的问题并将您的答案标记为解决方案:/
-
您找到的解决方案仍然具有误导性。 没有内部 12 小时或 24 小时表示。默认的
ToString实现使用当前文化来格式化DateTime。因此,当CurrentCulture为 en-US 时,您将获得 12 小时的表示。这或多或少是我在回答中写的。