与 ToString() 的关系

虽然 String.Format() 方法在将数据格式化为字符串时非常有用,但它可能有点过分,特别是在处理单个对象时,如下所示:

String.Format("{0:C}", money);  // yields "$42.00"

更简单的方法可能是简单地使用 C#中所有对象上可用的 ToString() 方法。它支持所有相同的标准和自定义格式字符串 ,但不需要必要的参数映射,因为只有一个参数:

money.ToString("C");  // yields "$42.00"

警告和格式限制

虽然这种方法在某些情况下可能更简单,但 ToString() 方法在添加左或右填充方面受到限制,就像你在 String.Format() 方法中所做的那样:

String.Format("{0,10:C}", money);  // yields "    $42.00"

为了使用 ToString() 方法实现相同的行为,你需要分别使用另一种方法,如 PadLeft()PadRight()

money.ToString("C").PadLeft(10);  // yields "    $42.00"