使用给定符号在C#中在控制台上绘制垂直线的简便方法

时间:2015-02-04 09:11:33

标签: c# ascii-art

是否有任何简单的方法或APIS在控制台上用符号 - /,|在C#中绘制框或行和_或 - 。 例如,我想画这样的东西:

     ^
     |
     |
     |
     |___________>
    /
   /
  /

我可以用" /"画两条线而不是第三条线。看起来像上图。我最后还需要一个箭头,但我认为这几乎是不可能的。

下面是我的脏代码:

    Console.WriteLine("\t\t^Z");
    Console.WriteLine("\t\t|");
    Console.WriteLine("\t\t|");
    Console.WriteLine("\t\t|");
    Console.WriteLine("\t\t|");
    Console.WriteLine("\t\t|");

    Console.WriteLine("\t\t         X");
    Console.WriteLine("\t\t -------->");
    Console.WriteLine("\t       /");
    Console.WriteLine("\t      /");
    Console.WriteLine("\t     /");
    Console.WriteLine("\t    /");
    Console.WriteLine("\t   /");

1 个答案:

答案 0 :(得分:0)

我不确定它是否更漂亮,但您可以使用PadLeft并制定方法来执行此操作

IDEOne Example

public static void MakeAxis(int lineLengths)
{
    for(int i = 0; i < lineLengths - 1; i++)
        Console.WriteLine("|".PadLeft(lineLengths, ' '));
    Console.WriteLine("|".PadLeft(lineLengths, ' ') + new String('_', lineLengths<<1));
    for(int i = lineLengths; i > 0; i--)
        Console.WriteLine("/".PadLeft(i, ' '));
}

示例输出

  |
  |
  |______
  /
 /
/