Exemplo n.º 1
0
 private void button1_Click(object sender, EventArgs e)
 {
     //创建完全二叉树
     BiTree Frxian = new BiTree();
     Frxian.CreateBiTree(Frxian.Head);
     //准备翻译
     if(TextContent.Textcontent == null)
     {
         MessageBox.Show("你未打开文件!\n请打开文件后再翻译!");
         return ;
     }
     string Contentword = TextContent.Textcontent.Replace(" ", "");    //将文件的字符串去掉空格
     if (!Frxian.IsLegalWord(Contentword))
         MessageBox.Show("对不起, 你的01码文件不符合编码格式\n        其中可能包含了非01字符\n\t 请检查后再载入!");
     else
     {
         //int n;                //基数
         //n = Frxian.GetBasnum(TextContent.Textcontent);     //获取基数
         string sortword = Frxian.SortWords(12);                      //获取按基数排好序的字符串
         sortword = sortword.Insert(0, "s");                         //s作为树的头结点的字符
         Frxian.InsertBiTree(Frxian.Head, sortword);        //将字符插入二叉树,创建二叉树成功
         Frxian.I_count = 0;                       //将全局变量置零,以便下一次打开文件使用
         string Translate_str = Frxian.Translation(Contentword);          //翻译为字符, 保存到string中
         textBox1.Text = null;                                                           //清空text内容
         textBox1.Text = Translate_str;                                       //将翻译后的字符显示
     }
 }
Exemplo n.º 2
0
 private void button2_Click(object sender, EventArgs e)
 {
     //创建完全二叉树
     BiTree Frxian = new BiTree();
     Frxian.CreateBiTree(Frxian.Head);
     //准备翻译
     if(TextContent.Textcontent == null)
     {
         MessageBox.Show("你未打开文件!\n请打开文件后再生成!");
         return ;
     }
     string content = Frxian.LegalWord(TextContent.Textcontent.ToString());   //将载入的文字合法化
     string sortword = Frxian.SortWords(12);                      //获取按基数排好序的字符串
     sortword = sortword.Insert(0, "0");                          //0作为树的头结点的字符
     Frxian.InsertBiTree(Frxian.Head, sortword);                  //将字符插入二叉树,创建二叉树成功
     Frxian.I_count = 0;                                          //将全局变量置零,以便下一次打开文件使用
     string Codesstring = Frxian.GetWordsCodes(content);          //获取全文的01码字符串
     textBox1.Text = null;                                                           //清空text内容
     textBox1.Text = Codesstring;                                       //将翻译后的字符显示
 }