diff --git a/src/ConsoleTables/ConsoleTable.cs b/src/ConsoleTables/ConsoleTable.cs index 2b904cf..11bb72c 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.Data; using System.IO; @@ -73,7 +73,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) { @@ -257,7 +257,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); @@ -273,6 +273,7 @@ public string ToStringAlternative() return builder.ToString(); } + private string Format(List columnLengths, char delimiter = '|') { // set right alignment if is a number @@ -311,6 +312,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: