我正在尝试将字符串从文本文件转换为 DateTime,但我得到了奇怪的结果。在一台计算机上,它可以工作,但在另一台计算机上却不行。我将如何在所有计算机上进行这项工作?在我的最后一个问题上,您说要添加文化的东西,它工作了几分钟,但现在它不再工作了。这是我的代码:
string[] stringArray = File.ReadAllLines("C:\\Program Files\\PointOfSales\\RecordTotals.txt");
int lines = stringArray.Length;
for (int i = 0; i < (lines / 5); i++)
{
TransactionList.Add(new Transaction
{
TotalEarned = Convert.ToDouble(stringArray[(i * 5)]),
TotalCost = Convert.ToDouble(stringArray[(i * 5) + 1]),
TotalHST = Convert.ToDouble(stringArray[(i * 5) + 2]),
Category = stringArray[(i * 5) + 3],
HoursSince2013 = Convert.ToDateTime(stringArray[(i * 5) + 4], CultureInfo.InvariantCulture)
});
}
我收到错误String was not recognized as a valid DateTime.
有什么线索吗?谢谢!
编辑:使用MessageBox.Show(stringArray[(i * 5) + 4]);
我得到26/10/2013 11:58:03 AM
编辑:为什么不能将当前时间转换为正确的文化?
DateTime Today = DateTime.Now;
Today = DateTime.ParseExact(Today.ToString(), "dd/MM/yyyy HH:mm:ss tt", CultureInfo.InvariantCulture);