我尝试读取 csv 文件。我的第五条记录包含日期:03/11/2008
这是我的一段代码:
[FieldConverter(ConverterKind.Date, "dd/MM/yyyy")]
public DateTime datum_5;
我的代码在此崩溃:
Result[] results= (Result[])engine.ReadFile(@"..\Data\expo.txt");
除了这个例外:行:1。列:41。字段:datum_5。将“2008 年 3 月 11 日”转换为类型时出错:“日期时间”。使用格式:'dd/MM/yyyy'
当我这样做时:
[FieldConverter(typeof(ConvertDate))]
public DateTime datum_5;
有了这个:
internal class ConvertDate : ConverterBase
{
/// <summary>
/// different forms for date separator : . or / or space
/// </summary>
/// <param name="from">the string format of date - first the day</param>
/// <returns></returns>
public override object StringToField(string from)
{
DateTime dt;
if (DateTime.TryParseExact(from, "dd.MM.yyyy", null, DateTimeStyles.None, out dt))
return dt;
if (DateTime.TryParseExact(from, "dd/MM/yyyy", null, DateTimeStyles.None, out dt))
return dt;
if (DateTime.TryParseExact(from, "dd MM yyyy", null, DateTimeStyles.None, out dt))
return dt;
throw new ArgumentException("can not make a date from " + from, "from");
}
}
我得到了这个例外:不能从 2008 年 3 月 11 日开始确定日期 Parameternaam:从
我究竟做错了什么?