DateTime转换在不同的计算机上失败/成功

Nat*_*han 1 .net c# datetime typeconverter

我正在尝试将字符串转换为DateTime,并且在一台计算机上,它工作正常,但在另一台计算机上,它没有!它运行的计算机运行32位Windows 7,它无法运行的计算机运行64位Windows 7.继承人鳕鱼:

            for (int i = 0; i < (lines / 5); i++)
            {
                MessageBox.Show(stringArray[(i * 5) + 4]);
                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])
                });
            }
Run Code Online (Sandbox Code Playgroud)

MessageBox是那里只是为了检查什么字符串未能转换,这是这一点,在第一次迭代:10/26/2013 11:58:03 AM

任何线索为什么这是无法在我的一台电脑上转换?我完全糊涂了......

谢谢!弥敦道

Ree*_*sey 6

任何线索为什么这是无法在我的一台电脑上转换?

最常见的原因是文化差异.由于您没有指定特定的文化,因此使用系统上的当前文化.

尝试使用:

HoursSince2013 = Convert.ToDateTime(stringArray[(i * 5) + 4], CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)