马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
另外,小型软件代码重用价值低,没有必要跨平台;大型软件,有严格的规划、部署,不可以随意跨平台。本章不对照各办法之间的功能,仅给出处置DataTable行兼并的几种经常使用办法:
1、两个DataTable的布局一样:
1,使用DataTable.Row.ItemArray.CopyTo功效,示例代码以下:
DataTableDataTable1=newDataTable();
DataTableDataTable2=newDataTable();
DataTablenewDataTable=DataTable1.Clone();
object[]obj=newobject[newDataTable.Columns.Count];
for(inti=0;i<DataTable1.Rows.Count;i++)
{
DataTable1.Rows.ItemArray.CopyTo(obj,0);
newDataTable.Rows.Add(obj);
}
for(inti=0;i<DataTable2.Rows.Count;i++)
{
DataTable2.Rows.ItemArray.CopyTo(obj,0);
newDataTable.Rows.Add(obj);
}
2,使用DataSourceDataTable.ImportRow功效,示例代码以下:
DataTableDataTable1=newDataTable();
DataTableDataTable2=newDataTable();
for(inti=0;i<DataTable1.Rows.Count;i++)
{
DataTable2.ImportRow(DataTable1.Rows);
}
2、两个DataTable的布局纷歧样
思绪以下:(代码太长,就不列出了)
先new出一个新的DataTable,然后将两个DataTable的列复制到新的DataTable中,再将两个DataTable的数据逐行逐列的复制到新的DataTable中。
3、本章我们重点研讨怎样使用DataTable.Merge的办法来兼并多个DataTable中数据,由于该办法利用起来很复杂,先看看DataTable.Merge的界说与重载办法:
界说:将指定的DataTable与以后的DataTable兼并。
重载办法:
1,DataTable.Merge(DataTable)将指定的DataTable与以后的DataTable兼并。
2,DataTable.Merge(DataTable,Boolean)将指定的DataTable与以后的DataTable兼并,唆使是不是在以后的DataTable中保存变动。
3,DataTable.Merge(DataTable,Boolean,MissingSchemaAction)将指定的DataTable与以后的DataTable兼并,唆使是不是在以后的DataTable中保存变动和怎样处置缺掉的架构。
示例代码以下:
假如只想保存个中一个表的布局:
DataTableDataTable1=newDataTable();
DataTableDataTable2=newDataTable();
DataTable2.Merge(dt,true,MissingSchemaAction.Ignore);
以上代码只保存DataTable2的布局
假如想兼并表布局
DataTableDataTable1=newDataTable();
DataTableDataTable2=newDataTable();
DataTable2.Merge(dt,true,MissingSchemaAction.Add);
注重:网上存在良多对Merge的不承认,次要是以为Merge的功能太差,保举选用ImportRow,编纂并未专门测试过Merge与ImportRow之间的功能差,在此不作评价。效率会有不少的变化。而实际上java是基于堆栈机器来设计,这和我们常见的基于寄存器的本地机器是差异比较大的。总体来说,这是一种虚拟机的设计思路。 |