【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

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

相关推荐
辻戋几秒前
从零实现React Scheduler调度器
前端·react.js·前端框架
徐同保2 分钟前
使用yarn@4.6.0装包,项目是react+vite搭建的,项目无法启动,报错:
前端·react.js·前端框架
Qrun1 小时前
Windows11安装nvm管理node多版本
前端·vscode·react.js·ajax·npm·html5
中国lanwp1 小时前
全局 npm config 与多环境配置
前端·npm·node.js
JELEE.2 小时前
Django登录注册完整代码(图片、邮箱验证、加密)
前端·javascript·后端·python·django·bootstrap·jquery
TeleostNaCl4 小时前
解决 Chrome 无法访问网页但无痕模式下可以访问该网页 的问题
前端·网络·chrome·windows·经验分享
前端大卫5 小时前
为什么 React 中的 key 不能用索引?
前端
你的人类朋友5 小时前
【Node】手动归还主线程控制权:解决 Node.js 阻塞的一个思路
前端·后端·node.js
小李小李不讲道理7 小时前
「Ant Design 组件库探索」五:Tabs组件
前端·react.js·ant design
毕设十刻7 小时前
基于Vue的学分预警系统98k51(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js