显示 DateTime 对象时,需要记住两件事。
- 文化设置:当您未指定明确的文化时,将使用运行应用程序的系统设置的文化。
- 格式化字符串:将 DateTime 对象转换为字符串时,您可以给它一个格式字符串作为参数,指定您的 DateTime 对象应如何格式化。类似:“d”表示短日期模式或“t”仅显示时间。
结合这两者将使您可以完全控制如何显示您的DateTime
对象。但是,在强制用户使用某种文化设置时应该小心。如果您的应用程序应该支持全球化(因此来自不同文化的多个用户可以使用您的应用程序),那么您不应该依赖于特定的文化。相反,您应该存储所有不区分文化的数据,并在将其显示在屏幕上时使用用户文化对其进行格式化。
下面是一个如何使用 CultureInfo 对象和格式字符串的示例:
string myDate = "10-05-2013 08:52:30";
DateTime date = DateTime.Parse(myDate);
Console.WriteLine(date.ToString("d", new CultureInfo("en-US"))); // 5/10/2013
Console.WriteLine(date.ToString("d", new CultureInfo("nl-NL"))); // 10-5-2013
Console.WriteLine(date.ToString("f", new CultureInfo("nl-NL"))); // vrijdag 10 mei 2013 08:52