【发布时间】:2019-04-05 07:53:56
【问题描述】:
我正在尝试将数据从 Excel 文件读取到 DataTable。我知道在向DataTable 添加列时,我们可以为DataColumn 分配不同的DataTypes。到目前为止,我已经尝试了以下,
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[2]
{
new Datacolumn("column1", typeof(string)),
new DataColumn("column2", typeof(int))
});
而我的excel文件有如下两列数据,
column1-----column2
abc----------------230
def----------------230tr
正如您在上面看到的,第二行第二列的值为“230tr”,DataTable 不应接受抛出带有无效数据字段和行号的异常。
普拉维娜。
【问题讨论】:
-
包含数字的字符串呢?说WD40?你想在那个实例中输入什么?
-
嗨乔恩,'WD40' 作为一个字符串会很好。但不应允许一个整体的数值并抛出异常。
-
您可以使用正则表达式来过滤数据。添加一个函数,在该函数中传递列值并返回真/假,并基于返回仅继续或取消该列。见链接-stackoverflow.com/questions/1181419/…
-
能否请您显示如何将上述值添加到数据表列的代码?
-
嗨 Ajay,使用正则表达式是一种解决方案。但我发现验证可以从 DataTable 本身完成。谢谢。
标签: c# asp.net excel datatable oledb