110,533
社区成员
发帖
与我相关
我的任务
分享
public void OnlyCol()
{
DataTable dt = new DataTable("result");
dt.Columns.Add("id", typeof(Int32));
dt.Columns.Add("type", typeof(String));
dt.Columns.Add("name", typeof(String));
dt.Rows.Add(1, "nokia", "nokia-71");
dt.Rows.Add(1, "nokia", "nokia-72");
dt.WriteXml(Console.Out);
LeaveCols(dt, "type", "name"); //留下type和name列
dt.WriteXml(Console.Out);
}
//留下指定的列
public void LeaveCols(DataTable dt, params String[] colNames)
{
if (colNames == null || colNames.Length == 0) return;
List<String> removeColNames = new List<string>();
foreach (DataColumn dtCol in dt.Columns)
{
Boolean leave = false;
foreach (string colName in colNames)
{
if(colName == dtCol.ColumnName) leave = true;
}
if(!leave) removeColNames.Add(dtCol.ColumnName);
}
foreach (string removeColName in removeColNames)
{
dt.Columns.Remove(removeColName);
}
}
//可以结贴了
foreach (DataColumn dc in dt.Columns)
{
if (dc.ColumnName != "需要的列名")
dt.Columns.Remove(dc);
}
DataTable dt = new DataTable("result");
dt.Columns.Add("id", typeof (Int32));
dt.Columns.Add("name", typeof (String));
dt.Rows.Add(1, "nokia-71");
dt.Rows.Add(1, "nokia-72");
dt.WriteXml(Console.Out);
dt.Columns.RemoveAt(0); //删除没用的,留下指定的
dt.WriteXml(Console.Out);
objlist.Columns.Remove("列名");