在数据库中,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”格式显示。
有人可以帮我吗?
答案 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);
答案 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");