首先,DateTime没有任何隐式格式.字符串有.
听起来你只需要解析你的字符串并用DateTime.ToString()类似方法格式化它;
string s = "30/09/2014";
DateTime dt;
if(DateTime.TryParseExact(s, "dd/MM/yyyy", CultureInfo.InvariantCulture,
DateTimeStyles.None, out dt))
{
dt.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture).Dump();
// Result will be 2014-09-30
}
Run Code Online (Sandbox Code Playgroud)
因为我在LINQPad上创建这个例子,.Dump()所以只是一个扩展方法.
解析具有/日期分隔符的字符串时要小心. "/"自定义格式说明符具有特殊含义,用指定的文化日期分隔符的当前文化替换我.这意味着,您CurrentCulture或指定的culture的DateSeparator属性不是/,即使您的字符串和格式是相同的格式,您的解析操作也将失败.
这就是我InvariantCulture在我的例子中使用的原因,因为它有/一个DateSeparator.
| 归档时间: |
|
| 查看次数: |
169 次 |
| 最近记录: |