将日期时间显示为MM / dd / yyyy HH:mm格式c#

时间:2013-04-15 14:38:16

标签: c# asp.net datetime

在数据库中,datetime存储在MM-dd-yyyy HH:mm:ss fromat中。
但是,我想以“MM / dd / yyyy HH:mm”格式显示日期时间。 我通过使用String.Format()来尝试它。

txtCampaignStartDate.Text = String.Format("{0:MM/dd/yyyy 
                           HH:mm}",appCampaignModel.CampaignStartDateTime);

此处appCampaignModel.CampaignStartDateTime是DateTime对象,其值为“MM-dd-yyyy HH:mm”格式。

我希望以“MM / dd / yyyy HH:mm”格式显示。

有人可以帮我吗?

6 个答案:

答案 0 :(得分:9)

此格式的斜杠MM/dd/yyyy HH:mm表示:“将我替换为当前文化的实际分隔符”。您必须明确使用CultureInfo.InvariantCulture

txtCampaignStartDate.Text = appCampaignModel.CampaignStartDateTime.ToString("MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture);

The "/" Custom Format Specifier

  

在数据库中,datetime存储在MM-dd-yyyy HH:mm:ss fromat。

请勿以datetimes的格式存储(n)varchar,这意味着您将其存储为datetime。请改用{{1}}。

答案 1 :(得分:5)

txtCampaignStartDate.Text = appCampaignModel.CampaignStartDateTime
                                         .ToString().Replace("-","/");

String.Format("{0:MM/dd/yyyy HH:mm}", dt);

检查:String Format for DateTime [C#]

String date = dt.ToString("MM/dd/yyyy HH:mm", DateTimeFormatInfo.InvariantInfo);

DateTime.ToString Method (String, IFormatProvider)

答案 2 :(得分:2)

为什么不只是一个简单的替换?

txtCampaignStartDate.Text = BadString.Replace("-","/");

答案 3 :(得分:1)

尝试使用添加的文化信息:

CultureInfo ci = new CultureInfo("en-US");
txtCampaignStartDate.Text = 
    appCampaignModel.CampaignStartDateTime.ToString("MM/dd/yyyy HH:mm", ci);

P.S。使用的文化信息就是一个例子。

答案 4 :(得分:1)

以您指定的格式显示日期:

txtCampaignStartDate.Text = appCampaignModel.CampaignStartDateTime.ToString("g",DateTimeFormatInfo.InvariantInfo)

对于更多日期时间格式,您可以浏览此link.

答案 5 :(得分:0)

由于你已经有了一个DateTime对象,所以只需按照你想要的方式对其进行编写:

appCampaignModel.CampaignStartDateTime.ToString("MM/dd/yyyy HH:mm");