我编写了一个程序,可以处理删除和更新,存储和搜索等文件以及所有客户,但问题是我在更新文件时遇到以下错误
字符串未被识别为有效的DateTime。
Deserialize方法中出现此错误:
public Order Deserialize(string str)
{
Order order = new Order();
var strOrder = str.Split(',');
order.Id = int.Parse(strOrder[0]);
**order.Date = DateTime.Parse(strOrder[1]);**
order.Price = int.Parse(strOrder[2]);
order.Description = strOrder[3];
order.CustomerId = int.Parse(strOrder[4]);
return order;
}
答案 0 :(得分:1)
根据评论进行修改。
导入System.Globalization
并尝试此操作:
var cultureInfo = new CultureInfo("en-US");
DateTime dateTime = Convert.ToDateTime(strOrder[1], cultureInfo);
答案 1 :(得分:0)
这很可能与文化设置有关。您需要通过使用DateTime.ParseExact方法的一个重载来指定预期的格式:
http://msdn.microsoft.com/en-us/library/332de853(v=vs.110).aspx