C#控制台输出进度和百分比的实例代码
发布时间:2021-10-01 23:49:43
标签:进度,百分比
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
bool isBreak = false;
ConsoleColor colorBack = Console.BackgroundColor;
ConsoleColor colorFore = Console.ForegroundColor;
//第一行信息
Console.WriteLine("****** now working...******");
//第二行绘制进度条背景
Console.BackgroundColor = ConsoleColor.DarkCyan;
for (int i = 0; ++i <= 25; )
{
Console.Write(" ");
}
Console.WriteLine(" ");
Console.BackgroundColor = colorBack;
//第三行输出进度
Console.WriteLine("0%");
//第四行输出提示,按下回车可以取消当前进度
Console.WriteLine("<Press Enter To Break.>");
//-----------------------上面绘制了一个完整的工作区域,下面开始工作
//开始控制进度条和进度变化
for (int i = 0; ++i <= 100; )
{
//先检查是否有按键请求,如果有,判断是否为回车键,如果是则退出循环
if (Console.KeyAvailable && System.Console.ReadKey(true).Key == ConsoleKey.Enter)
{
isBreak = true; break;
}
//绘制进度条进度
Console.BackgroundColor = ConsoleColor.Yellow;//设置进度条颜色
Console.SetCursorPosition(i / 4, 1);//设置光标位置,参数为第几列和第几行
Console.Write(" ");//移动进度条
Console.BackgroundColor = colorBack;//恢复输出颜色
//更新进度百分比,原理同上.
Console.ForegroundColor = ConsoleColor.Green;
Console.SetCursorPosition(0, 2);
Console.Write("{0}%", i);
Console.ForegroundColor = colorFore;
//模拟实际工作中的延迟,否则进度太快
System.Threading.Thread.Sleep(100);
}
//工作完成,根据实际情况输出信息,而且清楚提示退出的信息
Console.SetCursorPosition(0, 3);
Console.Write(isBreak ? "break!!!" : "finished.");
Console.WriteLine(" ");
//等待退出
Console.ReadKey(true);
}
}
}


猜你喜欢
- 一、前言:TCP原理简介首先,保证文章完整性,TCP的理论原理还是需要简介一下,略显枯燥๑乛◡乛๑。TCP(传输控制协议,Transmiss
- android:id 为控件指定相应的ID android:text 指定控件的文本,置尽量使用strings.xml android:gr
- 在 Java 中,当我们处理String时,有时需要将字符串编码为特定字符集。编码是一种将数据从一种格式转换为另一种格式的方法。字符串对象使
- 本文实例讲述了Android开发中解析xml文件XmlUtils工具类与用法。分享给大家供大家参考,具体如下:1. xmlUtil工具类pa
- settings.xml有什么用?如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径。se
- 本文实例为大家分享了Java实现简单贪吃蛇游戏的具体代码,供大家参考,具体内容如下贪吃蛇小游戏制作方法首先需要的准备有:1、掌握Java基础
- 目录目标功能点准备工作引入 Maven 依赖配置 DAO 数据层创建 JWT 工具类登录LoginFilterLoginSuccessHan
- 一、概述Socket类是Java执行客户端TCP操作的基础类,这个类本身使用代码通过主机操作系统的本地TCP栈进行通信。Socket类的方法
- 前言:在java的网络通信中,两个不同节点的主机想要进行通信则可以通过建立Socket对象(相当于客户端主机,向服务端请求发送信息)和Ser
- 本文实例讲述了Java实现的日历功能。分享给大家供大家参考,具体如下:应用名称:Java日历用到的知识:Java GUI编程,日期操作开发环
- 实现Struts登录1、jar包拷贝首先是建立java web项目,之后打开我们我们下载好strtus框架,Struts-1.2.9-bin
- 一、前言拷贝这个词想必大家都很熟悉,在工作中经常需要拷贝一份文件作为副本。拷贝的好处也很明显,相较于新建来说,可以节省很大的工作量。在Jav
- 本文实例讲述了java执行Linux命令的方法。分享给大家供大家参考。具体实现方法如下:public class StreamGobbler
- Android中oncreate中获得控件高度或宽度的实现方法onCreate函数只是提供了数据初始化的机会,此时还没有正式绘制图形。在图形
- 给新建的winform程序添加资源文件夹Resources小菜鸟开始学习WinForm程序别人的项目都有资源文件夹放图片之类的,我的就是没有
- SpringBoot启动yaml报错报错找不到org.yaml里的一个方法10:45:54.742 [main] ERROR org.spr
- 可能开发安卓的人大多数都用过很多下拉刷新的开源组件,但是今天用了官方v4支持包的SwipeRefreshLayout觉得效果也蛮不错的,特拿
- 前面已经把java io的主要操作讲完了 这一节我们来说说关于java io的其他内容 Serializable序列化 实例1:对象的序列化
- 1、TCP/IP层次模型当然这里我们只讨论重要的四层01,应用层(Application):应用层是个很广泛的概念,有一些基本相同的系统级T
- 1、什么是servlet异步请求Servlet 3.0 之前,一个普通 Servlet 的主要工作流程大致如下:(1)、Servlet 接收