我的c#编程课有一个项目;编写一个程序,可以读取员工文件和销售单文件并处理这两个文件。我已经完成了我需要的2个阵列,并且很好地填写了。我的问题是当我在控制台模式下打印出结果时。 我的数组是十进制类型。我需要让所有数字在某个位置正确对齐,我知道如何这样做的唯一方法是使用函数.PadRight / .PadLeft,它只适用于我看到的字符串。有没有其他方法可以做到这一点,或者我应该只是Convert.ToString每个值吗?
答案 0 :(得分:1)
如果您只需输出使用控制台填充的值,则可以使用Composite Formatting及其{0,spaces-to-format}
syntax格式化它们:
// Example array of decimals
var input = new decimal[]{ 12.24m, 199.99m, 1.0m, 42.42m, 100321.123m };
// Format each value to 10 digits
foreach(decimal d in input)
{
// Format each value to 10 places (right-justfied)
// You could alternatively use d.ToString("{0,10")
Console.WriteLine("{0,10}",d);
}
你可以see a working example of this here并在下面演示:
答案 1 :(得分:0)
你非常关注
decimal val = 10m;
//Or PadLeft
string formattedVal = val.ToString().PadRight(10, ' ');