多个DataTable表合并(相同结构与不同结构)
来源:互联网 发布:js遍历文件夹 编辑:程序博客网 时间:2024/06/05 06:36
多个DataTable表该如何进行合并?
解析如下:
相同结构的表:
使用Rows.Add && ItemArray
//使用Rows.Add&&ItemArray 相同表结构 -> 添加数据 private static DataTable NewItemArray(DataTable dt1, DataTable dt2) { //添加两表结构 -- 相同表结构添加数据 -- DataTable newtable = dt1.Clone();//新表添加表1结构 newtable.Columns.Add(dt2.Columns[0].ColumnName);//添加表二结构 newtable.Columns.Add(dt2.Columns[1].ColumnName); object[] value = new object[newtable.Columns.Count]; for (int i = 0; i < value.Length / 2; i++) { //新表添加一行数据,一行数据包括两个表数据的合并 dt1.Rows[i].ItemArray.CopyTo(value, 0); dt2.Rows[i].ItemArray.CopyTo(value, 2); newtable.Rows.Add(value); //ItemArrayd把行添加到数组中参数(数组,指定添加索引开始) } return newtable; } //两个相同结构的表 private static void NewTable(DataTable dt1, DataTable dt2) { dt1.Columns.Add("姓名"); dt1.Columns.Add("性别"); dt1.Rows.Add("张三", "男"); dt1.Rows.Add("李四", "男"); dt2.Columns.Add("姓名1"); dt2.Columns.Add("性别1"); dt2.Rows.Add("小红", "女"); dt2.Rows.Add("小德", "女"); } #endregion
两个不相同结构的表:
两个表结构不相同时,先创建一个新的表,接着添加第一个表结构,在添加第二个表的结构。(如果有多个表,则按自己需要的列名称顺序添加)最后在给新表导入数据。
使用Rows.Add && ItemArray
#region 不相同结构的表合并 //两个不相同结构的表 private static void NewTable2(DataTable dt3, DataTable dt4) { dt3.Columns.Add("姓名"); dt3.Columns.Add("性别"); dt4.Columns.Add("年龄"); dt4.Columns.Add("职业"); dt4.Columns.Add("工资"); dt3.Rows.Add("张三", "男"); dt3.Rows.Add("李四", "男"); dt3.Rows.Add("王丽", "女"); dt4.Rows.Add("25", "工程师", "5000+"); dt4.Rows.Add("28", "快递员", "3000+"); dt4.Rows.Add("27", "白领", "4000+"); } //使用Rows.Add && ItemArray 不相同表结构 -> 添加数据 //不相同表结构添加数据 private DataTable NewItemArray2(DataTable dt3, DataTable dt4) { #region 方法一 //表1结构添加到新表 DataTable newtable = dt3.Clone(); //表2结构添加到新表 for (int i = 0; i < dt4.Columns.Count; i++) { newtable.Columns.Add(dt4.Columns[i].ColumnName); } //给新表添数据 int count = 0; object[] value = new object[newtable.Columns.Count]; if (dt3.Rows.Count > dt4.Rows.Count) { count = dt3.Rows.Count; } else { count = dt4.Rows.Count; } for (int i = 0; i < count; i++) { dt3.Rows[i].ItemArray.CopyTo(value, 0); dt4.Rows[i].ItemArray.CopyTo(value, dt3.Rows.Count - 1); newtable.Rows.Add(value); } #endregion return newtable; } #endregion
0 0
- 多个DataTable表合并(相同结构与不同结构)
- 合并结构相同,不同,或多个DataTable
- C# DataTable 合并多个相同结构 的 datatable
- C# DataTable 合并多个相同结构 的 datatable
- C# 合并多个结构相同的DataTable
- c# 对两个Datatable的结构相同进行合并,结构相同和不同
- DataTable多表合并 同结构和不同结构的合并
- 相同的表结构使用DataTable是如何合并的?
- Linq to DataTable 合并结构相同的 个DataTable 且已重复的行不合并
- Linq to DataTable 合并结构相同的 个DataTable 且已重复的行不合并
- 不同表结构使用DataTable是如何合并的?
- 两个结构不同的DataTable合并
- 关于结构相同多表合并问题
- datatable同结构和不同结构的合并
- VBA案例3:合并多个结构相同的文件
- c# 对两个Datatable的结构相同进行合并
- c# 对两个Datatable的结构相同进行合并
- 合并两个dataset,其中DataTable的结构相同
- 阿里云服务器ECS centos7.2搭建nginx环境以及负载均衡
- 策划
- HTML5<audio>标签--音频播放全解析
- node + express 中ejs页面中文乱码问题
- Android Studio多渠道打包
- 多个DataTable表合并(相同结构与不同结构)
- C++递归:
- 查询数据库当前连接数(session),进程数等操作
- CSDN论坛刷阅读次数的方法
- 注册页面 , 验证码倒计时代码的实现
- 查看oracle用户数据库连接数
- VLD扩展使用指南
- try-catch死循环的问题
- Codeforces Round #384 (Div. 2)