临沂白癜风医院 http://disease.39.net/bjzkbdfyy/201016/8302892.html “在做程序测试小工具的时候,功能不多使用winfrom有些麻烦,直接控制台输入指令然后执行操作就很方便。” 正文内容从这里开始(可直接省略,亦可配图说明)。 控制台输入和输入的几个基础语句。 Console.Read();:从控制台窗口读取一个字符,返回int值(ASCII值)。 Console.ReadLine();:从控制台窗口读取一行文本,返回string值。 Console.ReadKey();:监听键盘事件,理解为按任意键执行。 Console.Write();:将制定的值写入控制台窗口。 Console.WriteLine();:将制定的值写入控制台窗口,但在输出结果的最后添加一个换行符。 Console.Read和Console.ReadLine的区别: 相同点:两者都是用于输入的函数。 不同点: Read只能读取一个字符,ReadLine可以读取一个字符串(如Read读取C和CUGG的返回值都是一样的,都为C的ASCII值,对于后续的UGG不理会,但是UGG还在缓存区里面;而ReadLine则为C和CUGG原样输出。) Read输出的结果为字符串第一个字符的ASCII码值,而ReadLine输出字符串。 Read只接受任意键盘输入,ReadLine接受回车,也就是说Read接受键盘任意键往下执行,ReadLine接受回车往下执行。 这里还牵扯到一个缓冲区问题,下来我们来看看缓冲区问题 Console.ReadKey:在键盘敲击任意键后退出控制台程序。一般在Console.Write()或Console.WriteLine()后加入这个函数,使窗口停留直至所需执行的命令完成后按任意键关闭窗口。 新建一个控制台程序,main方法中写入下面代码 Console.WriteLine("请输入一个字符:");inti=Console.Read();charchr=(char)i;Console.WriteLine("字符:"+chr);//当前缓冲区还存在回车指令Console.ReadLine();//添加的ReadLine清除缓冲区Console.WriteLine("请输入一个字符串:");stringctr=Console.ReadLine();Console.WriteLine("字符串:"+ctr);Console.ReadLine(); 然后就可以按照提示输入字符再输出了。 如果想一直输入输出怎么写呢? 写个死循环一直读取输入然后输出 while(true){stringval=Console.ReadLine();Console.WriteLine("循环:"+val);//Console.ReadLine();//执行命令(用户输入);} 控制台程序在运行,然后等待用户随时按键来暂停运行,直接用Console.ReadKey会阻塞运行,那么如何不阻塞的检测按键: while(true){Thread.Sleep();Console.WriteLine("----------");while(Console.KeyAvailable){Console.WriteLine("!!!!!");Console.ReadKey(true);}} 觉得本文对你有帮助?请分享给更多人 长按
|