Skip to content

Repository files navigation

ConsoleTableExt Build status

A library to print out a nicely formatted table in a console application C#

Nuget

https://www.nuget.org/packages/ConsoleTableExt/

Feature

  • Support box-drawing characters
  • Table alignment (left right and center)
  • Column alignment (left/right/center)
  • Table can have TITLE, can change text color and background color of title, support title alignment (left/right/center)
  • Support power char-map, strong customization ability
  • Contain some popular formas like Markdown table...
  • Support text formatter (include header)
  • Support many kind data type: DataTable, List...
  • Support metadata row (placed at top or bottom of table)
  • Column min-length
  • support .NET Framework >= 3.5, .NET core
  • ...
  • How to use:

    vartableData=newList<List<object>>{newList<object>{"Sakura Yamamoto","Support Engineer","London",46},newList<object>{"Serge Baldwin","Data Coordinator","San Francisco",28,"something else"},newList<object>{"Shad Decker","Regional Director","Edinburgh"},};

    Simple example with default format:

    ConsoleTableBuilder.From(tableData).ExportAndWriteLine();

    More example with existing format Alternative:

    ConsoleTableBuilder.From(tableData).WithFormat(ConsoleTableBuilderFormat.Alternative).ExportAndWriteLine(TableAligntment.Center);

    Advance example with custom format using CharMap:

    ConsoleTableBuilder.From(tableData).WithTitle("CONTACTS ",ConsoleColor.Yellow,ConsoleColor.DarkGray).WithColumn("Id","First Name","Sur Name").WithMinLength(newDictionary<int,int>{{1,25},{2,25}}).WithTextAlignment(newDictionary<int,TextAligntment>{{2,TextAligntment.Right}}).WithCharMapDefinition(newDictionary<CharMapPositions,char>{{CharMapPositions.BottomLeft,'='},{CharMapPositions.BottomCenter,'='},{CharMapPositions.BottomRight,'='},{CharMapPositions.BorderTop,'='},{CharMapPositions.BorderBottom,'='},{CharMapPositions.BorderLeft,'|'},{CharMapPositions.BorderRight,'|'},{CharMapPositions.DividerY,'|'},}).WithHeaderCharMapDefinition(newDictionary<HeaderCharMapPositions,char>{{HeaderCharMapPositions.TopLeft,'='},{HeaderCharMapPositions.TopCenter,'='},{HeaderCharMapPositions.TopRight,'='},{HeaderCharMapPositions.BottomLeft,'|'},{HeaderCharMapPositions.BottomCenter,'-'},{HeaderCharMapPositions.BottomRight,'|'},{HeaderCharMapPositions.Divider,'|'},{HeaderCharMapPositions.BorderTop,'='},{HeaderCharMapPositions.BorderBottom,'-'},{HeaderCharMapPositions.BorderLeft,'|'},{HeaderCharMapPositions.BorderRight,'|'},}).ExportAndWriteLine(TableAligntment.Right);

    Check more demo here https://github.com/minhhungit/ConsoleTableExt/blob/master/Src/ConsoleTableApp/Program.cs

    Char Map Definition

    Header Char Map

    There are many ways to contribute to ConsoleTableExt, either contribute issue/code directly or buy me a cup of coffee

    Buy Me a Coffee at ko-fi.com

    Inspired by

About

A fluent library to print out a nicely formatted table in a console application C#

Topics

Resources

Stars

348 stars

Watchers

7 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages