【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");

支持项, 以下统一输入theObj是System.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);

支持项, 以下统一输入theObj是System.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

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

相关推荐
椒哥12 分钟前
一天被问几十次"允许",我统计了 517 次,然后写了个插件
前端·javascript·github
风骏时光牛马14 分钟前
生成一个AI稳定性治理及疑难问题分析标题,只需要一个标题,不需要其他的任何文本。
前端
莫西干式秃头29 分钟前
用 AI + threejs 写了个浏览器里的 3D 动作游戏《武来》:砍怪、放技能、开 SU7
前端·人工智能·three.js
kyriewen43 分钟前
我测了 6 种防请求竞态的写法:只有 1 种真能打
前端·javascript·程序员
孟健1 小时前
用 WorkBuddy 做个人名片网页,挂上开源设计技能后效果完全不同了
前端·人工智能·ai编程
IT_陈寒1 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端
LuHang2 小时前
从天地图切换到高德地图:一次真实的底图迁移实战
前端·vue.js·cesium
用户360055579002 小时前
Kestrel_VLLM - 27 · 寄存器常驻与融合发射:两次「少发一次」
前端
前端小万2 小时前
用"道法术器"重构你和 AI 的协作方式
前端·人工智能·程序员
鶴哥只手遮天2 小时前
Angular 22 源码级深度解析-第 06 章 模板指令全解:`ɵɵelementStart`、`ɵɵproperty`、`ɵɵadvance` 与绑定指令
前端·开源·angular.js