C# ToString() 格式化字符串详解与示例

闻溪
闻溪
发布时间:2026-10-15 | 2人浏览过
原创

C# 中的 ToString() 方法是对象转换为字符串的核心手段,支持丰富的格式化选项。掌握这些格式符能显著提升代码可读性与数据处理效率。

数值类型的标准格式符

ToString() 在数值类型(如 int, double, float, decimal 等)中最常结合格式控制字符串使用。不同的字母代表不同的输出样式:

  • C (Currency) - 货币格式:根据当前区域性设置显示货币符号和千位分隔符。
  • D (Decimal) - 十进制整数:仅适用于整数类型,不足位数时自动补零。
  • E (Exponential) - 科学计数法:将数字转换为科学记数法表示。
  • F (Fixed point) - 固定小数位:指定保留的小数位数,四舍五入。
  • G (General) - 通用格式:最紧凑的表示形式,不添加无意义的尾随零。
  • N (Number) - 带逗号分隔符的数字:包含千位分隔符和小数位。
  • P (Percent) - 百分比:将数字乘以100并加上百分号。
  • X (Hexadecimal) - 十六进制:将整数转换为十六进制字符串,仅适用于整数。

第1步:理解各类别的基础用法

通过简单的代码逻辑,直观观察各格式符对同一数值或不同数值的影响:

  1. 货币与数字处理:
    $4834.50(美国区域)或 £4834.50(英国区域)展示了基于地域设置的货币格式化。
  2. 整数与科学计数:
    纯整数 4834 可直接输出;科学计数法则呈现为 4.834E+003。
  3. 精度控制:
    固定点位输出可能为 4384.50,而常规通用格式通常去除多余零得到 4384.5。
  4. 大数与特定进制:
    大数可格式化为带分隔符的 4,384.50;十六进制整型可输出为 1120(若需前缀,手动追加如 0x)。

第2步:编写并运行转换测试

在实际开发中,建议在代码环境中验证以下典型场景:

double d = 2500.5;
int i = 25;

// C: 货币格式 (假设中文环境)
Console.WriteLine(d.ToString("C")); // ¥2,500.50

// D5: 至少5位的十进制,不足补0
Console.WriteLine(i.ToString("D5")); // 00025

// E: 科学计数法
Console.WriteLine(d.ToString("E")); // 2.500500E+003

// F2: 固定两位小数
Console.WriteLine(d.ToString("F2")); // 2500.50

// G: 默认最短表示
Console.WriteLine(d.ToString("G")); // 2500.5

// N: 带千分位逗号
Console.WriteLine((2500000).ToString("N")); // 2,500,000.00

// X: 十六进制
Console.WriteLine(i.ToString("X")); // 19

总结与注意事项

在使用 ToString() 时需注意几点:一是格式符区分大小写,小写通常指代上述标准类别;二是参数类型限制,如 D 和 X 只能用于整型;三是文化敏感性,货币和时间格式的显示受服务器运行环境的区域设置影响。

以上就是关于 C# ToString() 方法格式化字符串的详细内容,更多关于 C# 数据类型转换的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表