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 英语词频 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, System.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 Form1_Load(object sender, EventArgs e) { richTextBox1.Text = ""; } private void richTextBox1_TextChanged(object sender, EventArgs e) { } 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(); } }