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

时间: 2024-10-11 22:15:53

C#中的String.Format方法输入日志标题的相关文章

C#语言基础知识(4):C#中的String.Format方法

定义String.Format是将指定的String类型的数据中的每个格式项替换为相应对象的值的文本等效项.(1)string p1="xiaomeng";string p2="xiaobei";Response.Write(String.Format("Hello {0},I'm {1}",p1,p1));(2)Response.Write(String.Format("Hello {0},I'm {1}","xi

php示例代码之类似于C#中的String.Format方法

php示例代码之类似于C#中的String.Format方法 原文来自于  http://stackoverflow.com/questions/1241177/c-string-format-equivalent-in-php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <?php function format() {       $args = func_get_args();       if (count($args) == 0

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}&quo

Oracle 安装报错 [INS-06101] IP address of localhost could not be determined 解决方法输入日志标题

安装Oracle 11gR2,报错:[INS-06101] IP address of localhost could not be determined 出现这种错误是因为主机名和/etc/hosts 文件不一致,只需要把主机名和其IP 写入/etc/hosts 文件,就ok了. 查看主机名和和ip 地址关系: [[email protected]~]# cat /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=

Java中利用MessageFormat对象实现类似C# string.Format方法格式化

我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使得代码更为直观清楚. 最近使用java时候却java的string.Format与c#重点string.Format用法不一样,java中的string.format更类似于C语言的sprintf()方法 例如: String str=null; str=String.format("Hello,%

JAVA String.format 方法使用介绍

1.对整数进行格式化:%[index$][标识][最小宽度]转换方式        我们可以看到,格式化字符串由4部分组成,其中%[index$]的含义我们上面已经讲过,[最小宽度]的含义也很好理解,就是最终该整数转化的字符串最少包含多少位数字.我们来看看剩下2个部分的含义吧: 标识: '-'    在最小宽度内左对齐,不可以与“用0填充”同时使用'#'    只适用于8进制和16进制,8进制时在结果前面增加一个0,16进制时在结果前面增加0x'+'    结果总是包括一个符号(一般情况下只适用

String.format()方法使用说明

JDK1.5开始String类中提供了一个非常有用的方法String.format(String format, Object ... args) 查看源码得知其实是调用了Java.util.Formatter.format(String, Object...)方法 [java] view plain copy print? public static String format(String format, Object ... args) { return new Formatter().f

避免string.Format方法的装箱

我们知道,使用string.Format方法可能会存在装箱的情况.比如如下: static void Main(string[] args) { string s = string.Format("拼接{0}和{1}", 1, 2); Console.WriteLine(s); Console.ReadKey(); } string.Format()方法接收的后两个形参类型是object,所以这里存在装箱. 现在查看IL代码: →打开"开发人员命令提示" →导航到应

测试String.Format方法

今天想使用String.Format,和平时的用法不一样. 直接上代码: [Test] public void TestMethod6() { string A = "A"; string B = "B"; string C = "C"; string D = "{0}"; String str = String.Format(D, A, B, C); Assert.AreEqual(str, "A");