我想使用filehelpers DLL解析CSV文件。 我希望它使列标题与类中的属性名称匹配。 我认为对于那些没有像列那样命名的属性,我将不得不使用“ FieldCaption”属性。 但这显然仅用于写入CSV文件吗?
如果我必须以与CSV文件中相同的方式排列属性,并且必须包括所有列,那么与仅按数字进行拆分和选择相比,这有什么好处吗?
问候 帕特里克
答案 0 :(得分:0)
FileHelpers依赖于映射类的概念,该概念要求您为每列指定一个字段(或自动属性),即使您不需要该列中的数据也是如此。因此,您可能有一个类似的映射类:
[DelimitedRecord("|")]
public class Orders
{
public int OrderID;
public string NotImportant1;
public string NotImportant2;
public string NotImportant3;
public string CustomerID;
[FieldConverter(ConverterKind.Date, "ddMMyyyy")]
public DateTime OrderDate;
[FieldConverter(ConverterKind.Decimal, ".")] // The decimal separator is .
public decimal Freight;
[FieldOptional, FieldArrayLength(0, 100)]
public string[] I_DONT_CARE_WHAT_COMES_AFTER_THIS;
}
不会自动处理未使用的列。
...与仅按数字进行拆分和选择相比,优势在哪里?
这里有一些优点: