diff --git a/src/ConsoleTables/ConsoleTable.cs b/src/ConsoleTables/ConsoleTable.cs index e2c2df6..ea8cd1c 100644 --- a/src/ConsoleTables/ConsoleTable.cs +++ b/src/ConsoleTables/ConsoleTable.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -72,7 +72,7 @@ public static ConsoleTable FromDictionary(Dictionary x.Value.Keys).Distinct().ToList(); - columNames.Insert(0,""); + columNames.Insert(0, ""); table.AddColumn(columNames); foreach (var row in values) { @@ -235,7 +235,7 @@ public string ToStringAlternative() var results = Rows.Select((row, i) => string.Format(Formats[i + 1].TrimStart(), row)).ToList(); // create the divider - var divider = Regex.Replace(columnHeaders, @"[^|]", "-"); + var divider = Regex.Replace(columnHeaders, "[^| ]", "-"); var dividerPlus = divider.Replace("|", "+"); builder.AppendLine(dividerPlus); @@ -251,6 +251,7 @@ public string ToStringAlternative() return builder.ToString(); } + private string Format(List columnLengths, char delimiter = '|') { // set right alignment if is a number @@ -289,6 +290,8 @@ private List ColumnLengths() public void Write(Format format = ConsoleTables.Format.Default) { + SetFormats(ColumnLengths(), Enumerable.Range(0, Columns.Count).Select(GetNumberAlignment).ToList()); + switch (format) { case ConsoleTables.Format.Default: