CSV文件数据提取与处理

在现代软件开发中,处理数据文件是一项常见的任务。CSV文件因其简单性和通用性,常被用作数据交换的格式。本文将介绍如何使用C#语言提取CSV文件中的数据,并将其加载到数据集中,最后将数据集转换为DataTable进行处理。

定义CSV文件的存储目录和文件名

首先,需要定义CSV文件的存储目录和文件名。在C#中,可以通过定义私有变量并提供公共属性来实现这一点。

private string dirCSV; private string fileNevCSV; public string FileNevCSV { get { return fileNevCSV; } set { fileNevCSV = value; } } public string dirCSV { get { return dirCSV; } set { dirCSV = value; } }

以上代码定义了两个私有变量dirCSV和fileNevCSV,分别用于存储CSV文件的目录和文件名。同时提供了公共属性FileNevCSV和dirCSV,以便在类的外部访问和修改这些变量。

连接数据源并加载数据集

接下来,需要连接到CSV文件的数据源,并将其内容加载到数据集中。

public DataSet loadCVS(int noofrows) { DataSet ds = new DataSet(); try { string strConnString = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=" + this.dirCSV.Trim() + ";Extensions=asc,csv,tab,txt;Persist Security Info=False"; string sql_select; OdbcConnection conn = new OdbcConnection(strConnString.Trim()); conn.Open(); if (noofrows == -1) { sql_select = "select * from [" + this.FileNevCSV.Trim() + "]"; } else { sql_select = "select top " + noofrows + " * from [" + this.FileNevCSV.Trim() + "]"; } OdbcDataAdapter obj_oledb_da = new OdbcDataAdapter(sql_select, conn); obj_oledb_da.Fill(ds, "csv"); conn.Close(); } catch (Exception e) { // Error handling } return ds; }

在这段代码中,首先创建了一个ODBC连接字符串,用于连接到CSV文件。然后,根据传入的参数noofrows来构建SQL查询语句。如果noofrows为-1,将选择文件中的所有记录;否则,将选择前noofrows条记录。接着,创建了一个OdbcDataAdapter对象,并使用它将数据填充到数据集ds中。最后,关闭了数据库连接。

最后,需要从生成的数据集中提取数据,并将其加载到DataTable中进行处理。

this.dirCSV = "file path"; this.fileNevCSV = "file name"; DataSet ds = loadCVS(-1); DataTable table = ds.Tables[0]; foreach (DataRow row in table.Rows) { // iterate through the DataTable. }

在这段代码中,首先设置了CSV文件的存储路径和文件名。然后,调用了之前定义的loadCVS方法,将CSV文件的内容加载到数据集ds中。接着,从数据集中提取了第一个表,并将其赋值给DataTable变量table。最后,遍历了DataTable中的所有行,以便进行进一步的处理。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485