C#中String.Format()方法的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中String.Format()方法的使用相关的知识,希望对你有一定的参考价值。

 

一、定义
String.Format是将指定的 String类型的数据中的每个格式项替换为相应对象的值的文本等效项。 
如:

(1)
string p1 = "Jackie";
string p2 = "Aillo";
Response.Write(String.Format("Hello {0}, I‘m {1}", p1, p2));
(2)
Response.Write(String.Format("Hello {0}, I‘m {1}", "Jackie", "Aillo"));

这二者的效果是一样的。都是将最后面的两项的值分别替换第一项的{0}和{1}。
输出的结果是:Hello Jackie, I‘m Aillo

二、String.Format的多格式定义:
      这里所谓的多格式是指一个格式项中可以定义1~3个格式参数,每种格式参数用分号(;)隔开。带2个和3个格式参数的格式项所对应的值必须是数值类型的,这样才能判断是否为负数、正数、零。
带1个格式参数:
//以科学计数法的格式输出
double p1 = 1000000;
Response.Write(String.Format("{0:E2}", p1));
带2个格式参数:
/*当格式项对应的值为非负数,则选择第一种格式;值为负数则选第二种格式*/
double p1 = 10000;
double p2 = -2420.50;
Response.Write(String.Format("{0:#,###0.00;#,###0.000;}<BR>", p1));
Response.Write(String.Format("{0:#,###0.00;#,###0.000;}", p2));
带3个格式参数:
/*当格式项对应的值为正数则选择第一张格式;
负数则为第二中格式;
值等于零则为第三种格式*/
1double p1 = 10000;
double p2 = -2420.50;
double p3 = 0.00;
Response.Write(String.Format("{0:#,###0.00;#,###0.000;#,###0.0000}<BR>", p1));
Response.Write(String.Format("{0:#,###0.00;#,###0.000;#,###0.0000}<BR>", p3));
Response.Write(String.Format("{0:#,###0.00;#,###0.000;#,###0.0000}", p2));
补充:
{0:N2} 中的N3,f3表示格式化之后数据的类型以及小数的位数。如:N2表示带2个小数的数字;
与此类似:
N或者n  表示  数字
F或者f   表示  固定点
E或者e  表示  科学计数法
D或者d  表示  十进制数
X或者x  表示  十六进制
G或者g  表示  常规
C或者c  表示  货币
本文转自《曙光博客》https://www.ezloo.com/2008/11/string_format.html

以上是关于C#中String.Format()方法的使用的主要内容,如果未能解决你的问题,请参考以下文章

C#常用方法——strng.Format()和$用法详解

C#中的String.Format方法输入日志标题

C#中string.Format 用法详解

C#中string.format用法详解 [转载]

C#中string.format用法详解

C# string.format用法详解