我在 ERP 集成软件方面工作。我需要从 HRM 应用程序解析 CSV 文件以进行输入。
我得到这样的输入 CSV 文件:
$Emp.No$=123456,$CardNo$=254658,$InTime$="12/11/2013 09:03:05",$OutTime$="12/11/2013 17:25:20"
$Emp.No$=565556,$CardNo$=254689,$InTime$="12/11/2013 09:03:50",$OutTime$="12/11/2013 18:01:11"
CSV 文件没有列名标题,而是每个字段在 $FieldName$
中都有一个与之关联的字段名。
我尝试用 CSVHelper 解析它。当使用 ReadFieldsByIndex()
方法时,它工作正常。
问题:
一些列没有 $InTime$
或 $OutTime$
。因此,按索引读取失败。如何只读取可用数据以及如何根据每行中可用的字段名称进行映射。
您那里没有 CSV 文件。您有一个数据文件,其中每一行包含一个或多个键/值对,以逗号分隔。键和值由 =
分隔,键由 $
括起来。
表达了你所拥有的,这应该有助于你确定解决方案:
- 不要使用 CSV 框架。
- 一次从文件中读取每一行。
- 拆分
上的行,
为您提供键值对。
- 将
=
上的键值对拆分为两部分。
- (可选)从键名中删除
$
。
然后您应该有适当级别的数据来将这些值传输到您拥有的任何目标对象。
我是一名优秀的程序员,十分优秀!