using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace TEXTBOX
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }        private void Form1_Load(object sender, EventArgs e)
        {
            richTextBox1.Text = "";
        }        private void button1_Click(object sender, EventArgs e)
        {
            Stream myStream;
            StreamReader myReader;
            OpenFileDialog openFileDialog1 = new OpenFileDialog();
            openFileDialog1.InitialDirectory = "E:\\";
            openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
            //openFileDialog1.FilterIndex = 2;
            openFileDialog1.RestoreDirectory = true;            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    if ((myStream = openFileDialog1.OpenFile()) != null)
                    {
                        string sLine;
                        myReader = File.OpenText(openFileDialog1.FileName);
                        while ((sLine = myReader.ReadLine()) != null)
                        {
                            richTextBox1.Text += sLine;
                        }                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
                }
            }        }        private void button2_Click(object sender, EventArgs e)
        {
            string W = richTextBox1.Text;
            //定义一个字符数组
            char[] c = { ' ', ',', '.', '?', '!', ':', ';', '\'', '\"' };            //分隔字符串后产生的字符串数组
            string[] S = W.Split(c);
            //建立哈希表
            Hashtable ha = new Hashtable();
            for (int i = 0; i < S.Length; i++)
            {
                //判断文本是否进入
                if (ha.ContainsKey(S[i]))
                {
                    ha[S[i]] = (int)ha[S[i]] + 1;
                }
                else
                {
                    ha.Add(S[i], 1);
                }
            }
            //遍历哈希表
            foreach (DictionaryEntry de in ha)
            {
                //输出
                Console.WriteLine(de.Key + ":" + de.Value);
                //追加文本
                richTextBox2.AppendText(de.Key + ":" + de.Value + "\n");            }
            int Sum = 0;
            for (int i = 0; i < S.Length; i++)
            {
                textBox1.Text = (i + 1).ToString();            }        }
    }
}
如果文章:I. am, a Boy.
统计结果是:
Boy:1
a:1
am:1
:3
I:1
单词出现次数 7次空格也被统计出来了
哪里的问题 请帮忙修正谢谢了