【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

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

相关推荐
你听得到1133 分钟前
用户说 App 卡,但说不清在哪?我把 Flutter 监控 SDK 升级成了链路观测工作台
前端·flutter·性能优化
天渺工作室9 小时前
实现一个adblock/adblock plus等浏览器广告拦截器检测插件
前端·javascript
阳光是sunny10 小时前
Vue 项目怎么做用户行为全链路监控?轻量插件方案详解
前端·面试·架构
ZhengEnCi10 小时前
Q04-Vite禁用CSS代码分割-解决生产环境样式加载顺序混乱问题
前端·vue.js·vite
九酒10 小时前
AI Agent 开发踩坑记:口播功能非得用 APP 原生实现吗?
前端·人工智能·agent
Jackson__11 小时前
做了一段时间的AI coding后,我终于搞清了 CLI 和 MCP 的区别
前端·agent·ai编程
IT_陈寒14 小时前
JavaScript项目实战经验分享
前端·人工智能·后端
用户479492835691514 小时前
6w star,GitHub 趋势第一的 Ponytail,这个agent插件到底在火什么
前端·后端
薛定喵的谔16 小时前
我开源了一个精致的 Next.js 博客模板:Skyplume
前端·前端框架·next.js