本文實例講述了C#實現從多列的DataTable里取需要的幾列的方法。分享給大家供大家參考,具體如下:
方法一:
也是廣為人知的一種:
YourDataTable.Columns.Remove("列名");
但是這種情況只適合于去掉很少列的情況。
如果有很多列我卻只要一兩列呢,那就得用方法二了。
方法二:
補加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#程序設計有所幫助。
新聞熱點
疑難解答