2016-09-22 120 views
0

我正在读取将从中创建数据表的“.xml”文件。数据表的列取决于“.xml”文件。 下面是例子。 enter image description here合并数据表的列

如示例所示,将从.xml文件中获取data1,data2,data3等等。数据(a,b,c,d,as,asd等)相对于列标题(item1,item2,item3 ...等)添加。

我想合并列的内容相关的行。即第一列(item1)的data1应该与第四列(item4)的data1合并,并且第四列应该被删除。可能吗?

下面是预期输出: enter image description here

+0

你会阐述更多? –

+0

@ user6002727如果第一行的内容相同,我想合并列。 –

+0

但第一列中没有** asd **?所以你如何给予预期的产出? –

回答

2

请不要这样:

static DataTable GetTable() 
    { 
     // Here we create a DataTable with four columns. 
     DataTable table = new DataTable(); 
     table.Columns.Add("Item1", typeof(string)); 
     table.Columns.Add("Item2", typeof(string)); 
     table.Columns.Add("Item3", typeof(string)); 
     table.Columns.Add("Item4", typeof(string)); 

     // Here we add five DataRows. 
     table.Rows.Add("a", "as", "asd", ""); 
     table.Rows.Add("b", "asd", "asd", ""); 
     table.Rows.Add("c", "a", "asd", ""); 
     table.Rows.Add("d", "a", "asd", ""); 
     table.Rows.Add("", "", "", "a"); 
     table.Rows.Add("", "", "", "d"); 
     table.Rows.Add("", "", "", "asd"); 
     return table; 
    } 

    DataTable dt = GetTable(); 
    foreach (DataRow dr in dt.Rows) 
    { 
     if (!String.IsNullOrEmpty(dr["Item4"].ToString()) && String.IsNullOrEmpty(dr["Item1"].ToString())) 
     { 
      dr["Item1"] = dr["Item4"].ToString(); //assign value of column 4 to column1 
     } 
    } 
    dt.Columns.Remove("Item4"); //delete column 4 
+0

谢谢:)它的工作。 –