zoukankan      html  css  js  c++  java
  • DataTable合并重复行的值

                //DataTable数据添加
    Hashtable ht = new Hashtable();
    DataTable dt = new DataTable();
    DataColumn dc = new DataColumn("id");
    dt.Columns.Add(dc);
    dc = new DataColumn("name");
    dt.Columns.Add(dc);
    dc = new DataColumn("values");
    dt.Columns.Add(dc);
    DataRow dr = dt.NewRow();
    dr["id"] = 1;
    dr["name"] = "张三";
    dr["values"] = "A";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["id"] = 2;
    dr["name"] = "李四";
    dr["values"] = "B";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["id"] = 3;
    dr["name"] = "张三";
    dr["values"] = "C";
    dt.Rows.Add(dr);
    dataGridView1.DataSource = dt;

    //合并
    for (int i = 0; i < dt.Rows.Count; i++ )
    {
    if (ht.ContainsKey(dt.Rows[i]["name"]))
    {
    //获取行索引
    int index = (int)ht[dt.Rows[i]["name"]];
    //获取最近一次的值(对应values)
    string str = (string)dt.Rows[index]["values"];
    //拼接
    dt.Rows[index]["values"] = str + "|" + dt.Rows[i]["values"];
    //删除重复行
    dt.Rows.RemoveAt(i);
    //调整索引减1
    i--;
    }
    else
    {
    //保存名称以及行索引
    ht.Add(dt.Rows[i]["name"], i);
    }
                }
    code in my life.
  • 相关阅读:
    Delphi 获取不重复随机数《LceMeaning》
    轻松一下
    MS SQL字段类型详解《转》
    Go语言优势与劣势
    go语言特点
    初始go语言
    django 短链接改成长连接
    extjs [1]
    Supervisor安装与配置
    InfluxDB命令使用
  • 原文地址:https://www.cnblogs.com/ghypnus/p/2433271.html
Copyright © 2011-2022 走看看