【C#】使用数字和时间方法ToString()格式化输出字符串显示

在C#编程项目开发中,几乎所有对象都有格式化字符串方法,其中常见的是数字和时间的格式化输出多少不一样,按实际需要而定吧,现记录如下,以后会用得上。

文章目录

数字格式化

例如,保留两位小数部分, 格式化输出如下

csharp 复制代码
string text = theObj.ToString(format);

带入参数,支持项如下

处理 format theObj text
保留两位小数 F2 12394.039 12394.04
分号隔开 N 14200 14,200.00
人民币格式 C 0.2 ¥0.20
百分比 P 0.24583 24.58%
转16进制数,只支持整型 X 12 C

上面的截取位数会自动四舍五入

更多请参考官方的文档 Double.ToString 方法

还可以这样用的

csharp 复制代码
string text = string.Format(string format, Object theObj)

支持项如下

处理 format theObj text
保留两位小数 {0:0.00} 12394.039 12394.04
零占位符 {0:0000.00} 194.039 0194.04
数字占位符 {0:####.#} 194.039 194
填充不足 {0:D3} 23 023
分号隔开 {0:N} 14200 14,200.00
四舍五入 {0:N3} 14200.2458 14,200.246
人民币格式 {0:C} 0.2 ¥0.20
人民币,保留一位小数 {0:C1} 23.15 ¥23.2
百分比 {0:P} 0.24583 24.58%
百分比,保留一位小数 {0:P1} 0.24583 24.6%

上面的截取位数会自动四舍五入

还可以这样用,格式化多个Object实例

csharp 复制代码
string text = string.Format("销售价:{0:C},进货价{1:C}", 10.28, 10.26);

更多请参考官方的文档 Format(String, Object)

时间格式化

时间对象的格式化输出

csharp 复制代码
string text = DataTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

支持项, 以下统一输入theObjSystem.DateTime.Now

处理 format text
短日期 yyyy-MM-dd 2024-06-13
时间完整 HH:mm:ss 21:29:33
长日期完整 yyyy-MM-dd HH:mm:ss 2024年6月13日 21:29:33

更多请参考官方的文档 ToString(String)

日期格式化,还可以这样用

csharp 复制代码
string text = string.Format("yyyy-MM-dd", System.DateTime.Now);

支持项, 以下统一输入theObjSystem.DateTime.Now

处理 format text
短日期 {0:d} 2024-6-13
长日期 {0:D} 2024年6月13日
长日期和时间 {0:f} 2024年6月13日 21:29
长日期完整 {0:F} 2024年6月13日 21:29:33
短日期和时间 {0:g} 2024-6-13 21:29
短日期完整 {0:G} 2024-6-13 21:29:33
日期 {0:m} 6月13日
时间 {0:t} 21:29
时间完整 {0:T} 21:29:33

上面都是常用到的,就记到这里为止吧

相关推荐
镜宇秋霖丶4 小时前
2026.5.6@霖宇博客制作中遇见的问题
前端·javascript·vue.js
小李子呢02115 小时前
前端八股Vue---Vue-router路由管理器
前端·javascript·vue.js
洛_尘7 小时前
Python 5:使用库
java·前端·python
Bigger7 小时前
Bun 能上生产吗?我的实战结论
前端·node.js·bun
kyriewen9 小时前
你的前端滤镜慢得像PPT?用Rust+WebAssembly,一秒处理4K图
前端·rust·webassembly
kyriewen119 小时前
你等的Babel编译,够喝三杯咖啡了——用Rust重写的SWC,只需眨个眼
开发语言·前端·javascript·后端·性能优化·rust·前端框架
IT_陈寒9 小时前
SpringBoot自动配置坑了我,原来要这样绕过去
前端·人工智能·后端
东方小月9 小时前
Claude Code 完整上手指南:MCP、Skills、第三方模型配置一次搞定
前端·人工智能·后端
hixiong12310 小时前
C# TensorRT部署RF-DETR目标检测&分割模型
人工智能·目标检测·计算机视觉·ai·c#
XZ探长10 小时前
基于 Trae Solo 移动办公修复 Vue3 前端服务问题
前端