C#在控制台中右对齐文本

13

有没有方法可以使文本在控制台应用程序中右对齐?我想要将带有“[ok]”的字符串打印在同一行的右侧,就像启动Linux发行版时看到的那样。

3个回答

17

如果你使用的是Console.WriteLine,你可以像这样做...

Console.WriteLine("{0,-20} {1,20}", "Finished!", "[ok]");

假设您的行宽为40个字符,单词“Finished”将左对齐在20个字符的字段中,然后单词“[ok]”将右对齐在另一个20个字符的字段中。所以你最终得到的结果看起来像是:

Finished!                            [ok]

12

我建议像@Oded所说的那样使用curses。

如果您真的不想使用任何第三方库,您可以使用Console.BufferWidth来获取控制台大小,然后使用Console.Console.CursorLeft设置列位置。

Console.CursorLeft = Console.BufferWidth - 4;
Console.Write("[ok]");
上面的代码在当前行末尾打印出 [ok],并将光标留在第一列下一行。

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接