用另一种格式转换DateTime
问题描述:
我有一个对象,它的一个属性是DateTime DateofBirth。我得到这个对象,并希望改变用另一种格式转换DateTime
{1978年8月16日12:00:00 AM}
到
{16/8/1978 12:00: 00 AM}
。
DateTime? tmp = externalConsumerProfile.DateOfBirth;
string s=DateTime.ParseExact(tmp.ToString(), "MM/dd/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture).ToString("dd/MM/yyyy hh:mm:ss tt") ;
但我有一个错误,当尝试转换
类型的异常“System.FormatException”出现在mscorlib.dll 但在用户代码中没有处理
更多信息:字符串未被识别为有效的DateTime。
当我尝试tmp.ToString("dd/MM/yyyy hh:mm:ss tt")
z具有错误
的方法ToString
答
没有重载所有你需要做的是格式的日期时间值。你不需要解析它。
DateTime? tmp = externalConsumerProfile.DateOfBirth;
string s=tmp.HasValue() ? tmp.Value.ToString("dd/MM/yyyy hh:mm:ss tt") : string.Empty;
你有一个'DateTime'对象,然后尝试解析它作为一个'DateTime'对象 – Jonesopolis
'Parse'一个'string'转换为'DateTime'。 'tmp'已经是'DateTime'了,你不需要把它做成一个。只是格式化它。 'var s = tmp.ToString(“MM/dd/yyyy hh:mm:ss tt”);' –
[C#DateTime to“YYYYMMDDHHMMSS”format]可能重复(http://stackoverflow.com/questions/3025361/ c-sharp-datetime-to-yyyymmddhhmmss-format) – Kiogara