winForm:已经取得这样一个string[] 数组 ReadTemp,里面保存的是一个个的单词(英文),但是可能会有重复,如:ReadTemp[0]="word", ReadTemp[10]="word",现在要做的就是把这些数组里的单词分类统计出来,现实到一个GridView中:单词  出现次数word      2
 ...      ..谢谢大家帮忙,急 在线等,今晚结帖
希望能看到各位试过的代码

解决方案 »

  1.   

    DataGrid支持用Excel作为数据源。
    可以试着把它弄到Excel里,然后再把Exel文件当作一个表来查。
    Excel文件肯定可以当做表来查。我用过。。
    试试吧!
    偶也是菜鸟!!
      

  2.   

    你也可以用一个HashTable!
    key 为你检索的单词,value 为 出现的次数。
    你每读入一个单词时可以判断当前的HashTable中是否有这个单词(非常简单)
    如果有这个Key你可以把这个value加一(不难)。
    如果没有你可以把这个值加入HashTable,value为1(更不难了)
      

  3.   

    检索完以后把这个HashTable的东东读出来就O了!!
      

  4.   

    private void button1_Click(object sender, EventArgs e)
            {
                Hashtable ht = new Hashtable();
                string[] ReadTemp = { "aa", "ss", "bb", "cc", "aa", "aa", "bb", "ss" };
                int wordNum = 0;
                for (int i = 0; i < ReadTemp.Length; i++)
                {
                    if (ht.ContainsKey(ReadTemp[i]))
                    {
                        wordNum = Convert.ToInt16(ht[ReadTemp[i]].ToString());
                        ht.Remove(ReadTemp[i]);
                        ht.Add(ReadTemp[i], wordNum + 1);
                    }
                    else
                    {
                        ht.Add(ReadTemp[i], 1);
                    }
                }            foreach (DictionaryEntry de in ht)
                {
                    dataGridView1.Rows.Add(de.Key, de.Value);
                }
            }
      

  5.   

    //别忘了导入System.Collections  还可以排序
            private void button1_Click(object sender, EventArgs e)
            {
                Hashtable ht = new Hashtable();
                string[] ReadTemp = { "aa", "ss", "bb", "cc", "aa", "aa", "bb", "ss" };
                int wordNum = 0;
                for (int i = 0; i < ReadTemp.Length; i++)
                {
                    if (ht.ContainsKey(ReadTemp[i]))
                    {
                        wordNum = Convert.ToInt16(ht[ReadTemp[i]].ToString());
                        ht.Remove(ReadTemp[i]);
                        ht.Add(ReadTemp[i], wordNum + 1);
                    }
                    else
                    {
                        ht.Add(ReadTemp[i], 1);
                    }
                }
                ArrayList akeys=new ArrayList(ht.Keys); 
                akeys.Sort(); //按字母顺序进行排序
                dataGridView1.Rows.Clear();
                 foreach(string skey in akeys)
                 { 
                   dataGridView1.Rows.Add(skey, ht[skey].ToString());
                 }
                 
            }