看起来这应该是一件简单的事情,但我一直没能做到正确。我看过http://idunno.org/archive/2004/14/01/122.aspx以供参考。
例子:
我想打印一个双精度值表,每个双精度输出具有 3 位小数精度,并占用 10 个空格(左对齐)。从概念上讲,我尝试了类似的方法,但它仅适用于精度或填充,而不适用于两者:
foreach(line in lines)
{
foreach (double val in line)
{
Console.Write("{0:0.000,-10}", val);
}
Console.WriteLine()
}
更新:我可以在非常简单的场景中使用 padleft/padright,如果我有更复杂的输出,它会变得不是很简洁。有没有类似sprintf的东西?
Try
double d = 3.14;
Console.WriteLine("{0,10:0.000}", d);
P.S: 看看本文作为字符串格式化的入门知识。还,string.Format
应该允许你做 sprintf 所做的一切 - 实际上更多......你还想做什么?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)