FluentConsole是一个托管在github的C#开源组件

时间:2022-05-08 19:13:56

FluentConsole是一个托管在github的C#开源组件

    从该系列的第一篇文章 .NET平台开源项目速览(1)SharpConfig配置文件读写组件 开始,不知不觉已经到第17篇了。每一次我们都是介绍一个小巧甚至微不足道的.NET平台的开源软件,或者学习,或者使用,或者介绍,或者分析原理等等,其实这个过程也让我了解了很多东西。也希望这个分享系列继续给大家带来收获,根据大家的评论和反应,其实说明这些小的组件都还不错,可以提高开发效率。

    今天继续给大家介绍一款简单到爆的开源组件,但是可以让你的控制台瞬间高大上。

1.控制台能有啥滑头?

    借用新生命论坛的一张图片,其实X组件里面也能这样控制,只不过我今天看到的组件使用起来更流程和功能单一一点。忽略图中内容,看控制台颜色:

FluentConsole是一个托管在github的C#开源组件

  看到别人的控制台花花绿绿,其实挺好玩的,是不是感觉逼格很高?

  如果可以非常灵活的*控制颜色,那该多好?

  没错,So Easy。。。其实很简单。其实Console里面都提供了这些控制功能。只不过作为入门级的Console,貌似没多少人会想到去研究这里面的东西。

  来看看我们今天的主题:FluentConsole

2.FluentConsole基本介绍

  FluentConsole是一个托管在github的C#开源组件,地址:https://github.com/ashmind/FluentConsole

  FluentConsole,主要功能非常简单,意思是更流程的控制台。。其实真的Very Fluent。一起看看,时间很短,5分钟足以。他的基本功能有:

1.可以控制Console输入的背景,以及字体的颜色;

2.可以使用条件输出和控制;

3.标准的链式写法,非常灵活和流畅,体验很棒。

  看看下面的例子和效果。

3.使用介绍

    FluentConsole使用非常简单,我们在这里提供2个小节,主要是基本的和扩展的

3.1 基本用法

    可以使用FluentConsole.Instance或者FluentConsole来直接操作对应颜色和文字。

    我们在使用过程中Line代表换行输出,效果等同于Console.WriteLine

                                Text代表直接输出,不换行,效果等同于Console.Write

     可以使用BackGround设置背景,设置字体颜色直接是Text或者Line。看看下面的代码和注释 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
FluentConsole.White.Background.Black.Line( "Black" );
FluentConsole
     .Cyan.Line( "Cyan" )
     .DarkBlue.Line( "DarkBlue" )
     .DarkCyan.Line( "DarkCyan" )
     .DarkGray.Line( "DarkGray" )
     .DarkGreen.Line( "DarkGreen" )
     .DarkMagenta.Line( "DarkMagenta" )
     .DarkRed.Line( "DarkRed" )
     .DarkYellow.Line( "DarkYellow" )
     .Gray.Line( "Gray" )
     .Green.Line( "Green" )
     .Magenta.Line( "Magenta" )
     .Red.Line( "Red" )
     .White.Line( "White" )
     .Yellow.Line( "Yellow" );
Console.ReadKey();

 效果如下:

FluentConsole是一个托管在github的C#开源组件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public  static  void  TestByStatic()
{
     //Text相当于 Console.Write
     //Line相当于 Console.WriteLine
 
     //将控制台的颜色对象直接用于设置输出的Text
     FluentConsole.Yellow.Text( "输入黄色字体" );
 
     FluentConsole.Yellow.Background
                  .Blue.Line( "设置黄色背景,和蓝色文字" );
 
     FluentConsole.Yellow.Text( "黄色" )
                  .Red.Line( "红色" );
 
     var  console = FluentConsole.Instance;
     console.Red.Text( "另外的用法" );
 
     //条件用法
     FluentConsole.Yellow.Line( "当前对象状态:" )
                  .With(c => 10 > 8 ? c.Red : c.Blue)
                  .Text( "成功" );
}

 FluentConsole是一个托管在github的C#开源组件

4.资源

  官网:https://github.com/ashmind/FluentConsole

  源代码与Demo:

  怎么样?赶紧去尝试一下吗?



如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。

.NET数据挖掘与机器学习,作者博客: http://www.cnblogs.com/asxinyu