我在文件中有以下格式的日期(YYYY-MM-DD HH:MM:SS.millisecs):
1987-04-03 19:17:12.000
当我使用DateTime来解析此字符串时,它只获取日期部分而不会获得时间部分。有人可以告诉我如何将其解析为DateTime对象吗?
答案 0 :(得分:5)
使用DateTime.ParseExact()。
var format = "yyyy-MM-dd hh:mm:ss.fff"
var dt = DateTime.ParseExact(s, format);
见http://msdn.microsoft.com/en-us/library/w2sa9yss.aspx。您还应该添加格式提供程序,就像CultureInfo.InvariantCulture。
var dt = DateTime.ParseExact(s, format, CultureInfo.InvariantCulture);
答案 1 :(得分:1)
我做了一个快速的控制台应用程序,它显示了日期和时间:
string dateTimeString = "1987-04-03 19:17:12.000";
Console.WriteLine(DateTime.Parse(dateTimeString));
Console.ReadLine();
结果输出是: 4/3/1987 7:17:12 PM
您可能错误地使用了生成的解析值?
答案 2 :(得分:1)
DateTime.Parse(“1987-04-03 19:17:12.000”)返回4/3/1987 7:17:12 PM
答案 3 :(得分:0)
您要查找的格式字符串是:
yyyy-MM-dd HH:mm:ss.fff
所以
DateTime myDateTime = DateTime.ParseExact(sourceString, "yyyy-MM-dd HH:mm:ss.fff",
CultureInfo.InvarientCulture);
答案 4 :(得分:0)
你是如何解析它的?你如何将DateTime转换为字符串?
DateTime date = DateTime.Parse ("1987-04-03 19:17:12.000");
Console.WriteLine (date);
// yields: 4/3/1987 7:17:12 PM
Console.WriteLine (date.Date);
// yields: 4/3/1987
答案 5 :(得分:0)
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime.ParseExact(timeString, "dd/MM/yyyy HH:mm:ss.fff",culture);