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

本文实例讲述了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#程序设计有所帮助。

(0)

相关推荐

  • C#中DataTable 转实体实例详解

    因为Linq的查询功能很强大,所以从数据库中拿到的数据为了处理方便,我都会转换成实体集合List<T>. 开始用的是硬编码的方式,好理解,但通用性极低,下面是控件台中的代码: using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Demo1 { class Pr

  • C# DataTable使用方法详解

    在项目中常常常使用到DataTable,假设DataTable使用得当,不仅能使程序简洁有用,并且可以提高性能,达到事半功倍的效果,现对DataTable的使用技巧进行一下总结. 1.添加引用 using System.Data; 2.创建表 //创建一个空表 DataTable dt = new DataTable(); //创建一个名为"Table_New"的空表 DataTable dt = new DataTable("Table_New"); 3.创建列

  • C#实现DataTable映射成Model的方法(附源码)

    本文实例讲述了C#实现DataTable映射成Model的方法.分享给大家供大家参考,具体如下: 这是数据库开发中经常遇到的问题,当然,这可以用现成的ORM框架来解决,但有些时候,如果DataSet/DataTable是第三方接口返回的,ORM就不方便了,还得自己处理. 反射自然必不可少的,另外考虑到DataTable中的ColumnName通常与Model的PropertyName并不严格对应,可以用Attribute来记录这种映射关系. 步骤1:先创建一个DataFieldAttribute

  • C#从DataTable获取数据的方法

    本文实例讲述了C#从DataTable获取数据的方法.分享给大家供大家参考.具体如下: 通过通用类,返回一个DataTable,要想显示每个单元格,只要做两次循环即可: foreach (DataRow row in dt.Rows) { foreach (DataColumn column in dt.Columns) { Console.WriteLine(row[column]); } } row[column] 中的column是检索出来的表个列名. 如果想把某列的值拼接字符串,那就去掉

  • C#保存与读取DataTable信息到XML格式的方法

    本文实例讲述了C#保存与读取DataTable信息到XML格式的方法.分享给大家供大家参考.具体如下: 这里主要实现: 1.将DataTable中的信息保存到XML中 2.将以上述格式在XML中保存的信息读取到DataTable内 一.将DataTable的内容写入到XML文件中 /// <summary> /// 将DataTable的内容写入到XML文件中 /// </summary> /// <param name="dt">数据源</p

  • C# DataTable中查询指定字段名称的数据

    1.查询后获取对应的数据集后,传递参数strcodeName,根据数据集中strcodeName的匹配对应字段,获取数据集中对应的目的字段 复制代码 代码如下: private string GetStrName(DataTable dtable, string strcodeName) {             string Name = strcodeName;             DataRow[] dr = dtable.Select("匹配对应字段=" + strcod

  • C#实现将DataTable内容输出到Excel表格的方法

    本文实例讲述了C#实现将DataTable内容输出到Excel表格的方法.分享给大家供大家参考.具体如下: 1.关于本文 本文描述了一个函数(SaveToExcel),该函数可以将DataTable数据内的数据输出到Excel表格中 2.相关说明 1)本文中使用这个函数将一个DataTable中的内容输出到路径名为addr的目录下: 复制代码 代码如下: public void SaveToExcel(string addr, System.Data.DataTable dt) 2)这个函数需要

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

    本文实例讲述了C#实现从多列的DataTable里取需要的几列的方法.分享给大家供大家参考,具体如下: 方法一: 也是广为人知的一种: YourDataTable.Columns.Remove("列名"); 但是这种情况只适合于去掉很少列的情况. 如果有很多列我却只要一两列呢,那就得用方法二了. 方法二: 复制代码 代码如下: DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { "你要

  • Asp.net中获取DataTable选择第一行某一列值

    数据源是一个DataTable,现在我们需要获取这个DataTable的第一行第一列的值. 先准备一个数据集,创建一个DataTable,并填充数据: source code: using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using Insus.NET.Models; na

  • jquery获取table指定行和列的数据方法(当前选中行、列)

    实例如下: //不多说,直接上代码. $("table tr").click(function() {//为表格的行添加点击事件 var tr = $(this);//找到tr原色 var td = tr.find("td");//找到td元素 alert(td[0].innerHTML);//指定下标即可 }) 今日项目中需要用到取table选中列的数据,网上资料发现都不能获取到选中指定列的数据,通过分析测试后总结出以上代码,可以获取选中行/列的数据.取td的数据

  • vue实现在表格里,取每行的id的方法

    如下所示: 1.在template上写上 slot-scope="scope" 2.然后在template里边的标签上,scope.row.id 以上这篇vue实现在表格里,取每行的id的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: vue.js+Element实现表格里的增删改查

  • pandas DataFrame 根据多列的值做判断,生成新的列值实例

    环境:Python3.6.4 + pandas 0.22 主要是DataFrame.apply函数的应用,如果设置axis参数为1则每次函数每次会取出DataFrame的一行来做处理,如果axis为1则每次取一列. 如代码所示,判断如果城市名中含有ing字段且年份为2016,则新列test值赋为1,否则为0. import numpy as np import pandas as pd data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'S

  • 易语言利用取字符实现Excel列号与字母互转功能的代码

    Excel字母列号互转代码 .版本 2 .程序集 excel字母列号互转 .子程序 excel列号转字母, 文本型 .参数 列号, 整数型 .局部变量 返回值, 文本型 .局部变量 索引, 整数型 索引 = 列号 - 1 ' 以0为基 .循环判断首 () 返回值 = 字符 (65 + 索引 % 26) + 返回值 索引 = 索引 \ 26 - 1 .循环判断尾 (索引 ≥ 0) 返回 (返回值) .子程序 excel字母转列号, 整数型 .参数 字母, 文本型 .局部变量 返回值, 整数型 .局

  • python读取txt文件并取其某一列数据的示例

    菜鸟笔记 首先读取的txt文件如下: AAAAF110 0003E818 0003E1FC 0003E770 0003FFFC 90 AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5 AAAAF110 0003E814 0003E204 0003E760 0003FFFC 85 AAAAF110 0003E7F0 0003E208 0003E764 0003FFFC 68 AAAAF110 0003E7CC 0003E1FC 0003E758 000

  • 批处理bat将txt文本第一列内容相同的行的最后一列的数字相加

    小弟不材,想了好几天没写出来,才来论坛求助,希望各位高手帮帮忙解下题 ,在此先谢谢各位了- 比如,aaa.txt 内容如下 11111,20150430,10 11111,20150430,20 11111,20150430,30 22222,20150430,40 33333,20150430,50 44444,20150430,60 44444,20150430,70 55555,20150430,80 66666,20150430,90 66666,20150430,100 77777,2

  • C#对DataTable里数据排序的方法

    直接给个实例代码吧 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e)    {        DataTable dt = new DataTable();        dt.Columns.Add("Name");        dt.Columns.Add("Age");//因为是字符串,所以排序不对        dt.Rows.Add("小明", "

  • js里取容器大小、定位、距离等属性搜集整理

    element.clientWidth //元素的实际宽度,不算边框 element.clientHeight //元素的实际高度,不算边框 element.offsetWidth //元素的实际宽度,加上边框 element.offsetHeight //元素的实际高度,加上边框 element.scrollWidth //这个说法很多,我测试下来应该是元素实际宽度-滚动条的宽度 element.scrollHeight //这个说法很多,我测试下来应该是元素实际高度-滚动条的高度 eleme

随机推荐