在C#中,我如何解析日期时间的格式"dd/mm/yyyy"或格式字符串"dd-mm-yyyy"?我收到一个错误,指出我的字符串格式不正确.我需要能够解析所有格式而不仅仅是其中一种格式.
我正在用C#(技术上是MonoTouch)编写RSS和Mail阅读器应用程序.
我遇到了解析DateTimes 的问题.我看到日期在野外呈现的方式有很多差异,并开始编写这样的函数:
static string[] DateTimeFormats = new string[] {
"ddd, d MMM yyyy H:mm:ss \"GMT+00:00\"",
"d MMM yyyy H:mm:ss \"EST\"",
"yyyy-MM-dd\"T\"HH:mm:ss\"Z\"",
"ddd MMM d HH:mm:ss \"+0000\" yyyy",
};
public static DateTime ParseTime(string timeStr) {
var r = DateTime.MinValue;
var styles = DateTimeStyles.AdjustToUniversal |
DateTimeStyles.AllowWhiteSpaces;
if (DateTime.TryParse(timeStr,
CultureInfo.InvariantCulture,
styles,
out r)) {
return r;
}
else {
if (DateTime.TryParseExact(timeStr,
DateTimeFormats,
CultureInfo.InvariantCulture,
styles,
out r)) {
return r; // BUGGY! Ignores time zone!!
}
}
Console.WriteLine ("BAAAAAAAAAAAAD");
return DateTime.MinValue; …Run Code Online (Sandbox Code Playgroud) 非常需要一个用于.NET的Robust DateTime解析器库,更喜欢C#DateTime.TryParse支持非常少的格式我知道一年前问过这个问题但没有好的答案.那里一定有好的文库!商业或开源
我看着野田时间.但是博客说它还没有进行解析
日期分为两类:
日期格式:所有各种日期格式
自然日期:人类如何说/写它