C# String.Format用法

详细文章链接
String.Format 方法的几种定义:

String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项。
String.Format (String, Object[]) 将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。
String.Format (IFormatProvider, String, Object[]) 将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。指定的参数提供区域性特定的格式设置信息。
String.Format (String, Object, Object) 将指定的 String 中的格式项替换为两个指定的 Object 实例的值的文本等效项。
String.Format (String, Object, Object, Object) 将指定的 String 中的格式项替换为三个指定的 Object 实例的值的文本等效项。

常用的格式化数值结果表

字符说明示例输出
C货币string.Format("{0:C3}", 2)$2.000
D十进制string.Format("{0:D3}", 2)002
E科学计数法string.Format("{0:E}", 2)1.20E+001
G常规string.Format("{0:G}", 2)2
N用分号隔开的数字string.Format("{0:N}", 250000)250,000.00
X十六进制string.Format("{0:X000}", 12)C
string.Format("{0:000.000}", 12.2)012.200

常用的几种实例

1、字符串的数字格式

代码如下:
string str1 =string.Format("{0:N1}",56789); //result: 56,789.0
string str2 =string.Format("{0:N2}",56789); //result: 56,789.00
string str3 =string.Format("{0:N3}",56789); //result: 56,789.000
string str8 =string.Format("{0:F1}",56789); //result: 56789.0
string str9 =string.Format("{0:F2}",56789); //result: 56789.00
string str11 =(56789 / 100.0).ToString("#.##"); //result: 567.89
string str12 =(56789 / 100).ToString("#.##"); //result: 567
string str = string.Format("{0:f2}", .2); //result: 0.20

2、格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元)

代码如下:
string.Format("{0:C}",0.2)
结果为:¥0.20 (英文操作系统结果:$0.20)
默认格式化小数点后面保留两位小数,如果需要保留一位或者更多,可以指定位数

代码如下:
string.Format("{0:C1}",23.15)
结果为:¥23.2 (截取会自动四舍五入)
格式化多个Object实例

代码如下:
string.Format(“市场价:{0:C},优惠价{1:C}”,23.15,19.82)

3、格式化十进制的数字(格式化成固定的位数,位数不能少于未格式化前,只支持整形)

代码如下:
string.Format("{0:D3}",23) //结果为:023
string.Format("{0:D2}",1223) //结果为:1223,(精度说明符指示结果字符串中所需的最少数字个数。)

4、用分号隔开的数字,并指定小数点后的位数

代码如下:
string.Format("{0:N}", 14200) //结果为:14,200.00 (默认为小数点后面两位)
string.Format("{0:N3}", 14200.2458) //结果为:14,200.246 (自动四舍五入)

5、格式化百分比
string.Format("{0:P}", 0.24583) //结果为:24.58% (默认保留百分的两位小数)
string.Format("{0:P1}", 0.24583) //结果为:24.6% (自动四舍五入)

6、零占位符和数字占位符

代码如下:
string.Format("{0:0000.00}", 12394.039) //结果为:12394.04
string.Format("{0:0000.00}", 194.039) //结果为:0194.04
string.Format("{0:###.##}", 12394.039) //结果为:12394.04
string.Format("{0:####.#}", 194.039) //结果为:194

7、日期格式化

代码如下:
string.Format("{0:d}",System.DateTime.Now) //结果为:2009-3-20 (①月份位置不是03 ②如果电脑时间格式是2009-3-20,运行程序后即为2009-3-20;若电脑格式为2009/3/20,运行程序后结果为2009/3/20)
string.Format("{0:D}",System.DateTime.Now) //结果为:2009年3月20日
string.Format("{0:f}",System.DateTime.Now) //结果为:2009年3月20日 15:37
string.Format("{0:F}",System.DateTime.Now) //结果为:2009年3月20日 15:37:52
string.Format("{0:g}",System.DateTime.Now) //结果为:2009-3-20 15:38
string.Format("{0:G}",System.DateTime.Now) //结果为:2009-3-20 15:39:27
string.Format("{0:m}",System.DateTime.Now) //结果为:3月20日
string.Format("{0:t}",System.DateTime.Now) //结果为:15:41
string.Format("{0:T}",System.DateTime.Now) //结果为:15:41:50

多学两招:
通过在ToString方法中传入指定的“格式说明符”也可以实现对数值和日期类型数据转换。
如:
int money = 1298;
Console.WriteLine(money.ToString(“C”)); //结果为¥1,298.00

DateTime dateTime = DateTime.Now;
//输出短日期格式
Console.WriteLine(dateTime.ToString(“d”));//结果为2020/11/5

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C#中的string.format是一个字符串格式化方法,可以将一个字符串中的占位符替换为指定的值。它的基本语法如下: string.Format(string format, params object[] args); 其中,format是一个字符串,包含了一个或多个占位符,用花括号{}括起来。args是一个可变参数,用来传递要替换的值。 例如,下面的代码将会把字符串中的{}和{1}分别替换为"Hello"和"World": string str = string.Format("The message is: {} {1}", "Hello", "World"); 输出结果为:"The message is: Hello World"。 除了基本的占位符,还可以使用格式化字符串来指定输出的格式,例如: string str = string.Format("The number is: {:C}", 123.45); 输出结果为:"The number is: $123.45"。 这里的{:C}表示将第一个参数格式化为货币形式。更多的格式化选项可以参考MSDN文档。 ### 回答2: C是一种计算机程序设计语言,最初由贝尔实验室的Dennis Ritchie于1972年创建。C是一种高级语言,它的语法结构类似于自然语言,可以方便地阅读和理解,同时又具有强大的编程能力。C语言广泛应用于系统编程、嵌入式开发、操作系统、驱动程序、网络编程、图形编程等领域。 C语言具有简单、高效、可移植等特点,它可以在不同的计算机系统中编译和运行,这使得C语言成为了非常受欢迎的编程语言之一。在C语言中,程序员可以进行各种操作,如输入输出、变量定义、控制流程语句、函数调用等,这些操作可以被转换为机器指令,以实现计算机的功能。 C语言还具有丰富的库函数,这些函数可以被程序员方便地调用,在程序开发过程中,可以大大提高开发效率和程序性能。C语言库函数包括数学、字符串、输入输出、内存操作、文件处理等方面,它们使得C语言可以处理各种实际问题和任务。 C语言的语法结构简单明了,但是也需要程序员具有一定的编程基础和思维能力,才能编写出高质量的程序。同时,C语言也存在一些问题,如内存泄漏、缓冲区溢出等,这些问题需要程序员进行有效的处理和解决。 总之,C语言是一种非常重要的编程语言,它具有广泛的应用和不可替代的地位,对于想要从事计算机编程的人来说,学习C语言是必不可少的基础。 ### 回答3: 很抱歉,我需要更多的上下文信息来正确回答您的问题。 "c"这个字母有很多可能的含义,因此我需要更多具体的信息来理解您的问题。您能否提供更多上下文信息或者问题的背景?这样我才能够更好地回答您的问题。感谢您的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值