使用ToString(“F2”)可保留两位小数并四舍五入,如decimal value = 123.456m; string result = value.ToString(“F2”); 输出”123.46″;自定义格式如”0.00″或”#,##0.00″可控制补零与千位分隔符;结合CultureInfo使用N2可实现区域性格式化,如zh-CN显示”1,234.56″、de-DE显示”1.234,56″;C# 6+推荐用内插字符串$”{price:F2}”提升可读性。

在 C# 中,将 decimal 类型转换为 string 并保留两位小数,最常用的方法是使用格式化字符串。以下是几种实用且推荐的方式。
使用标准数值格式化字符串
你可以使用 “F2” 格式说明符来确保保留两位小数:
decimal value = 123.456m;
string result = value.ToString(“F2”); // 输出 “123.46”
F2 表示固定点数格式,保留两位小数,并自动四舍五入。
使用自定义格式字符串
如果你需要更灵活的控制,比如添加千位分隔符或特定区域设置,可以使用自定义格式:
decimal value = 1234.567m;
string result = value.ToString(“0.00”); // 输出 “1234.57”
string result2 = value.ToString(“#,##0.00”); // 输出 “1,234.57”
其中:
– 0 表示必要时显示数字,否则补零
– # 表示可选数字占位符,不显示多余零
结合 CultureInfo 进行区域性格式化
如果希望输出符合特定语言或地区的习惯(如中文、德语等的小数点和千分位),可以传入 CultureInfo:
using System.Globalization;
decimal value = 1234.56m;
string result = value.ToString(“N2”, new CultureInfo(“zh-CN”)); // 中文格式:”1,234.56″
string resultDE = value.ToString(“N2”, new CultureInfo(“de-DE”)); // 德语格式:”1.234,56″
N2 是数字格式,包含千位分隔符和两位小数。
使用内插字符串(C# 6+)
代码更清晰的方式是使用字符串插值:
decimal price = 99.9m;
string output = $”价格:{price:F2}”; // 结果:”价格:99.90″
这种方式可读性强,适合拼接文本与格式化数字。
基本上就这些。根据你的需求选择合适的方法:简单保留两位小数用 F2,需要分隔符用 N2 或自定义格式,国际化场景加上 CultureInfo。不复杂但容易忽略细节,比如四舍五入和区域差异。
以上就是C# 怎么将 decimal 转换为 string 并保留两位小数_C# decimal 转 string 格式化指南的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1441217.html
微信扫一扫
支付宝扫一扫