A library to print out a nicely formatted table in a console application C#
- 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
- ...
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



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