返回Hashtable
- //DataTable数据
- DataTable dt = new DataTable();
- dt.Columns.Add("test", typeof(string));
- dt.Rows.Add("jay");
- dt.Rows.Add("li,su");
- dt.Rows.Add("jay,su");
- dt.Rows.Add("li");
- dt.Rows.Add("li,jay");
- Hashtable ht = new Hashtable();//键/值对
- foreach (DataRow dr in dt.Rows)
- {
- string[] sarr = dr[0].ToString().Split(',');
- for (int i = 0; i < sarr.Length; i++)
- {
- if (!ht.Contains(sarr[i]))
- ht.Add(sarr[i], 1);
- else
- ht[sarr[i]] = (int)ht[sarr[i]] + 1;
- }
- }
- richTextBox1.Clear();
- foreach (DictionaryEntry de in ht)
- {
- richTextBox1.AppendText(de.Key + ":" + de.Value + "/r/n");//输出
- }
- /*
- li:3
- jay:3
- su:2
- */
返回DataTable
- private void button2_Click(object sender, EventArgs e)
- {
- //DataTable数据
- DataTable dt = new DataTable();
- dt.Columns.Add("test", typeof(string));
- dt.Rows.Add("jay");
- dt.Rows.Add("li,su");
- dt.Rows.Add("jay,su");
- dt.Rows.Add("li");
- dt.Rows.Add("li,jay");
- DataTable rdt = new DataTable();//目标表
- //添加列
- foreach (DataRow dr in dt.Rows)
- {
- string[] sarr = dr[0].ToString().Split(',');
- for (int i = 0; i < sarr.Length; i++)
- {
- if (!rdt.Columns.Contains(sarr[i]))
- rdt.Columns.Add(sarr[i], typeof(string));
- }
- }
- //添加行,当前只有1行
- DataRow rdr = rdt.NewRow();
- for (int i = 0; i < rdt.Columns.Count; i++)
- rdr[i] = 0;
- rdt.Rows.Add(rdr);
- //更新数值
- foreach (DataRow dr in dt.Rows)
- {
- string[] sarr = dr[0].ToString().Split(',');
- for (int i = 0; i < sarr.Length; i++)
- rdt.Rows[0][sarr[i]] = Convert.ToInt32(rdt.Rows[0][sarr[i]]) + 1;
- }
- dataGridView1.DataSource = rdt;//绑定
- }