黑马程序员 手写山寨版的金山词霸

---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

此例子综合了   文件的读写,字符串的处理,字典的灵活运用,本人感觉是一个很不错的小实例,太有助于以上几方面的综合运用及理解了。

主要功能是查询单词,用户在控制台端输入一个英文单词,就可查询出此英文单词的汉语意思,有多个意思的可自动换行显示

例如查询单词 china,结果如下:


其中要读取的文件内容格式部分如下图:


代码具体如下所示:

class Program
    {
        static void Main(string[] args)
        {
            string[] words=System.IO.File.ReadAllLines(@"英语四级词汇.txt",Encoding.Default);     //读取文件的所有行
            Dictionary<string, string> w = new Dictionary<string, string>();
            for (int i = 0; i < words.Length;i++ )
            {
                string[] temp=words[i].Split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries);//字符串处理,按空格提取字符串
                if (!w.ContainsKey(temp[0]))
                {
                    w.Add(temp[0], temp[1]);                                     //如果字典w对象不存在此键值则在字典中添加此条记录
                }
                else 
                {
                    w[temp[0]] += "\n"+temp[1];                                //若键值已有,则将重复了的值换行加到上同键值的记录里
                }
            }
            while(true)
            {
                Console.Clear();
            Console.WriteLine("请输入要查询的单词:");
            string  s = Console.ReadLine();
           
            if (Convert.ToString(s) == "qqq")                                 //同时按三个qqq,则退出此程序
            {
                Console.WriteLine("退出词霸查询!");
                break;
            }
            else if(s=="")
            {
                Console.WriteLine("输入的单词不能为空!!");
                Console.WriteLine("按Enter键继续!");
                Console.ReadKey();
            }
            else 
            {
                if (w.ContainsKey(s))
                {
                    Console.WriteLine(w[Convert.ToString(s)]);                   //输出字典中的值
                    Console.WriteLine("\n\n\n输入qqq之后按Enter键程序结束!");
                   
                }
                else 
                {
                    Console.WriteLine("您所查询的本词库没有...");
                    Console.WriteLine("按Enter键继续!");
                }
                Console.ReadKey();
            }


            }
            Console.ReadKey();
        }
    }

--------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值