在我的一个遗留应用程序中,有以下代码行。解析包含 HH:MM 格式后的早期 objFrom1,但现在解析返回 H:MM 格式后的同一行代码。你们能帮我找出问题所在?它与过去几年的代码行相同,但由于面临一些问题,突然输出发生了变化
string From1 ="06:00 am";
DateTime objFrom1 = new DateTime();
objFrom1 = DateTime.Parse(From1);
现在 objFrom1 包含值 6:00 am
扩展我的评论。一个DateTime
对象,像任何对象一样,没有固有的格式,它只是保存数据,直到你准备好用它做一些事情
您正在寻找的是该对象的字符串表示形式。因此,您描述了转换为字符串时所采用的格式,例如:
string hourMinutes = objFrom1.ToString("HH:mm");
此外,您可以执行其他格式,例如:
string dayMonthYearHourMinutes = objFrom1.ToString("dd MMM yyyy HH:mm");
您还可以在执行其他字符串操作时指定格式,例如:
string hourMinutes = string.Format("The time is: {0:HH:mm}", objFrom1);
最后,您可以 Google 或查看此 MSDN 文章以获取有关DateTime
格式的更多信息。
string outputString = objFrom1.ToString("HH:mm");
标准DateTime
格式字符串:http: //msdn.microsoft.com/en-us/library/az4se3k1.aspx
构建自定义DateTime
格式字符串:http: //msdn.microsoft.com/en-us/library/8kb3ddd4.aspx
您应该使用 String.Format 为您的 DateTime 值获取适当的输出字符串。
String.Format("{0:hh:mm tt}", objFrom1)