Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C#控制台应用程序中使用不同长度的字符串格式化表格_C#_Formatting_Console - Fatal编程技术网

在C#控制台应用程序中使用不同长度的字符串格式化表格

在C#控制台应用程序中使用不同长度的字符串格式化表格,c#,formatting,console,C#,Formatting,Console,我浏览了一下网站,找不到任何专门针对这个问题的东西 我有一个控制台应用程序,可以循环查找7-20个字符之间的字符串,加上日期/时间,加上一个标志,再加上文件 Console.Write("========================================================================="); Console.WriteLine("Start time: " + DateTime.UtcNow); Console.Write("=======

我浏览了一下网站,找不到任何专门针对这个问题的东西

我有一个控制台应用程序,可以循环查找7-20个字符之间的字符串,加上日期/时间,加上一个标志,再加上文件

    Console.Write("=========================================================================");
Console.WriteLine("Start time: " + DateTime.UtcNow);
Console.Write("=========================================================================");
Console.WriteLine("All times in UTC.");
Console.Write("=========================================================================");
Console.WriteLine(String.Format("{0,-8}{1,17}{2,37}{3,13}", "Time", "File:Offset", "F", "String"));
Console.Write("=========================================================================");
问题是字符串和文件名+路径的长度可能不同。输出使用相同的字符串格式,但根据文件名的长度,格式设置处于禁用状态

有没有办法让控制台每次从固定位置开始写入项目。
所以时间从0开始,文件:offsett从17开始,F从37开始,字符串从40开始。这样它的格式就正确了。此外,这可能更高级一些,但它能截断任何不适合列的内容吗


谢谢

您可以使用c#中的
PadLeft
string函数来实现您想要的功能


这里有更多信息

您可以使用c#中的
PadLeft
string函数来实现您想要的功能


这里有更多信息

非常有效。我试图使用它,我只是没有计算控制台的宽度。再次感谢。没问题,别忘了接受答案作为您首选的解决方案。这非常有效。我试图使用它,我只是没有计算控制台的宽度。再次感谢。没问题,别忘了接受答案作为首选解决方案。