string.Format详解:转换与格式化技巧

3星 · 超过75%的资源 需积分: 14 5 下载量 16 浏览量 更新于2024-09-22 收藏 20KB TXT 举报
"string.Format的用法" `string.Format` 是 C# 语言中用于格式化字符串输出的一个非常重要的方法。它允许我们将变量或表达式的值插入到一个模板字符串中,生成定制化的输出。通过使用占位符和指定的格式说明符,我们可以控制数字、日期、时间以及其他类型的数据在字符串中的显示方式。 1. **货币格式**: `{0:C}` 用于输出货币格式,例如 `string.Format("{0:C}", 0.2)` 会生成 "0.20",而 `string.Format("{0:C1}", 23.15)` 会四舍五入到最近的十分位,输出 "23.2"。这里的数字1表示小数点后的位数。如果要显示美元符号,可以使用 `{0:$C}`, 如 `string.Format("{0:$C}", 0.20)` 会输出 "$0.20"。 2. **数字格式**: `{0:D}` 用于整数的千位分隔格式,如 `string.Format("{0:D3}", 23)` 输出 "023",其中3表示前导零填充到的总位数。`{0:D2}` 对于大于9的数不会填充前导零,如 `string.Format("{0:D2}", 1223)` 输出 "1223"。 3. **数值格式**: `{0:N}` 包含千位分隔符和小数点,例如 `string.Format("{0:N}", 14200)` 输出 "14,200.00",默认保留两位小数。`{0:N3}` 保留三位小数,如 `string.Format("{0:N3}", 14200.2458)` 输出 "14,200.246"。 4. **百分比格式**: `{0:P}` 用于将数字转换为百分比形式,`string.Format("{0:P}", 0.24583)` 输出 "24.58%",默认保留两位小数。`{0:P1}` 保留一位小数,输出 "24.6%"。 5. **固定宽度格式**: `{0:0000.00}` 可以确保数字始终具有指定的宽度,例如 `string.Format("{0:0000.00}", 12394.039)` 输出 "12394.04",`{0:0000.00}` 对于较小的数会填充前导零,如 `string.Format("{0:0000.00}", 194.039)` 输出 "0194.04"。`{0:###.##}` 和 `{0:####.#}` 分别表示可变宽度的整数部分和小数部分,如 `string.Format("{0:###.##}", 12394.039)` 和 `string.Format("{0:####.#}", 194.039)`。 6. **日期和时间格式**: `{0:d}` 用于短日期格式,如 `string.Format("{0:d}", System.DateTime.Now)` 输出 "2009-3-20",`{0:D}` 输出长日期格式 "2009320"。`{0:f}` 和 `{0:F}` 分别是带有时间和不带秒的长日期/时间格式,而 `{0:g}` 和 `{0:G}` 分别是带有时间和日期的通用格式,但 `{0:G}` 会包含毫秒。 在 `string.Format` 中,可以使用多个占位符,通过不同序号区分不同的值,例如 `string.Format("Value1: {0}, Value2: {1}", value1, value2)`。 `string.Format` 是一个强大的工具,用于生成格式化后的字符串,能够灵活处理各种数据类型的输出格式,广泛应用于日志记录、报告生成、用户界面显示等方面。掌握其用法对于提高代码的可读性和灵活性至关重要。