在c#中将am或pm字符串设置为日期时间格式?

时间:2017-01-31 08:32:20

标签: c# datetime

我有

int year=2017;
int month=02;
int day=01;
int hour=11;
int minutes=30;
String format="AM";

DateTime datetime=new DateTime(year,month,day,hour,minutes,0);

那么如何将此AMPM格式string添加到日期时间?

3 个答案:

答案 0 :(得分:1)

您可以通过以下方式完成此操作:

dateTime.ToString("yyyy-MM-dd hh:mm tt");

添加上午/下午的'tt'。请查看MSDN文档(https://msdn.microsoft.com/en-us/library/zdtaw1bw%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

答案 1 :(得分:1)

答案在这里:Convert to DateTime with AM/PM

/var/lib/docker

在你的情况下:

DateTime.ParseExact("2/22/2015 9:54:02 AM", "M/d/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);

答案 2 :(得分:1)

一种方法是使用条件:

int year = 2017;
int month = 2;
int day = 1;
int hour = 11;
int minutes = 30;
String format = "AM";

DateTime datetime = new DateTime(year, 
                                 month, 
                                 day, 
                                 (format.ToUpperInvariant() == "PM" && hour < 12) ? 
                                     hour + 12 : hour, 
                                 minutes, 
                                 00);