您好我正在使用FileHelperEngine来解析csv文件。
FileHelperEngine csvEngine = new FileHelperEngine(typeof (Model));
Model[] lines= csvEngine.ReadFile(fileName) as Model[];
如果列顺序匹配Model对象中属性的顺序,则此方法可以正常工作 所有csv文件都在第一行有标题。 但是当标题顺序与模型属性不同时,我有问题...
如果csv列的顺序与Model对象的顺序不同,它怎么能工作?
答案 0 :(得分:2)
你应该使用两个类,一个Model
,它是一个FileHelpers记录类,它只是你的CSV文件的规范。它应该只包含公共字段(不是属性),字段的顺序应与CSV文件中的顺序相同。 (FileHelpers记录类不应被视为应遵循最佳编码实践的普通C#类;而是仅用于描述导入文件结构的语法。)
然后,一旦你将文件读入Model[]
数组,然后枚举它,将字段映射到第二个类ModelObject
,它不是FileHelpers类,可以具有以下属性:任何订单。