从C#中的DBF(Visual FoxPro)文件中读取特定列

问题描述 投票:1回答:1

我一直使用DbfDataReader来读取C#应用程序中的DBF文件。到目前为止,我可以读取列名,列索引并成功遍历记录。在不使用列索引的情况下,似乎没有一种方法可以读取特定的列数据。例如,我可以使用以下语句获得FIRSTNAME值:

using DbfDataReader;    
var dbfPath = "/CONTACTS.DBF";
using (var dbfTable = new DbfTable(dbfPath, EncodingProvider.UTF8))
{
     var dbfRecord = new DbfRecord(dbfTable);
     while (dbfTable.Read(dbfRecord))
     {
          Console.WriteLine(dbfRecord.Values[1].ToString()); // would prefer to use something like dbfRecord.Values["FIRSTNAME"].ToString()
          Console.WriteLine(dbfRecord.Values[2].ToString()); // would prefer to use something like dbfRecord.Values["LASTNAME"].ToString()
     }
  }

其中1是FIRSTNAME列的索引,而2是LASTNAME列的索引。无论如何,对于本质上是名称/值对的东西,是否可以使用“ FIRSTNAME”(或列名)作为键(或访问器)?我的目标是获取我关心的所有列,而不必每次都先构建此映射。 (如果我使用的术语不正确,请原谅我。)>

非常感谢您看这个...

我一直在使用DbfDataReader读取C#应用程序中的DBF文件。到目前为止,我可以读取列名,列索引并成功遍历记录。似乎没有办法...

c# .net-core dbf
1个回答
0
投票

使用DbfDataReader类,如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.