C#实现从多列的DataTable里取需要的几列

前端技术 2023/09/05 C#

本文实例讲述了C#实现从多列的DataTable里取需要的几列的方法。分享给大家供大家参考,具体如下:

方法一:

也是广为人知的一种:

YourDataTable.Columns.Remove(\"列名\");

但是这种情况只适合于去掉很少列的情况。

如果有很多列我却只要一两列呢,那就得用方法二了。

方法二:

复制代码 代码如下:
DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { \"你要的列名\", \"你要的列名\" });

补加dataTable操作相关内容:

对DataTable 的一些操作

在dataTable中最容易想到的是用for循环来操作,但事实不到万不得已是不会用form循环的,因为效率一般不高。

1)  取行

取行一般用rowfilter

DataTable datSource;//数据源表
//过滤表
DataView davTemp = new DataView(datSource, \"过滤条件\", \"排序字段\", DataViewRowState.各种 状态);
//把过滤后的表赋给新表
DataTable datNew = davTemp.ToTable();

2)取表的某列或多列

DataTable datSource;//数据源表
DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { \"列名\", \"列名\" .....});

3)复制某行的值[前提是表结构或列数相同]

DataTable datSource;
DataTable datNew;
datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;

4)表列数相同,但是却列名不同,想复制值怎么办?

换个思维方式,既然列数相同,只是列名不同,为什么不改变列名呢?

如下:

DataTable datSource;
DataTable datNew;
datNew= datSource.Copy();
datNew.Columns[\"FirstColumn\"].ColumnName = \"YourColumnName\";

5)调整列的位置SetOrdinal();

DataTable dat = new DataTable();
//添加三列
dat.Columns.Add(\"col1\");
dat.Columns.Add(\"col2\");
dat.Columns.Add(\"col3\");
//添加一行数据
dat.Rows.Add(1,2,3);
//把第三列放到第一的位置
dat.Columns[\"col3\"].SetOrdinal(0);

希望本文所述对大家C#程序设计有所帮助。

本文地址:https://www.stayed.cn/item/13027

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。