2014-01-13 87 views
0

我有一个.net 4.0应用程序,它使用第三方库,它接受一个xml字符串作为方法参数。我没有这个库的源代码。System.DateTime.Parse.Parse()错误字符串未被识别为有效DateTime

我上了很多其使用该库项目的工作,但我已经上了一个新的机器上一个新的项目工作,并解析包含以下格式的日期的XML文件时,它抛出一个异常:

2014/01/13 07:01:00 

内部异常指出该字符串未被识别为有效的dateTime。编辑库使用ParseExact不是一种选择,我试图改变线程文化,但没有成功。该xml文件是正确的。

任何帮助将是伟大的?

谢谢!

+0

XML文件[不正确](http://www.w3schools.com/schema/schema_dtypes_date.asp)。发回它,你不需要它。 –

+1

@HansPassant我无​​法控制xml文件中的日期格式。另外,同一个xml文件被许多其他机器上的同一个库成功解析。 – Lance

回答

0

试试这个:

string strDate = "2014/01/13 07:01:00"; 
DateTime datDate; 
if (DateTime.TryParseExact(strDate, new string[] { "yyyy/MM/dd hh:mm:ss" }, 
         System.Globalization.CultureInfo.InvariantCulture, 
         System.Globalization.DateTimeStyles.None, out datDate)) 
{ 
    Console.WriteLine(datDate); 
} 
+0

管理得到第三方库的副本。源代码并更新了xml解析器以使用TryParseExact。 – Lance

+0

仍然不确定为什么此问题出现在此特定机器上。我将XP设置与另一台机器进行了比较,没有发现任何相关的差异。 – Lance

相关问题