天天看点

C# 占位符

在c#中有两种方式可以输出多个字符

其中的一种:

static void main()  

         {

                   string c=console.readline();

                   string d=console.readline();

                  console.writeline(c+","+d);    //用“+”连接符

         }

那么你说这样写很容易写错,很麻烦,c#还提供另一种书写方式,就是占位符,用{ }来表示,在{ }内填写所占的位的序号,c#规定从0开始,也就是说刚才那中输出,我们还可以这样来表示

console.writeline(“{0},{1}”,c,d); //使用占位符的例子

在这里有两个位c,d,那么也就需要两个占位符所以我们写成{0},{1},还需要注意的是,占位符要写在””内。

除了使用writeline()来输出,当然我们还可以使用字符串格式输出,例如上面的程序完全可以写成:

                   string m=string.format(“{0}”,c);   //字符串格式输出

   string n=string.format(“{0}”,d);

                  console.writeline(m+","+n);    //用“+”连接符

可以看出输出结果是完全一样的。在这里string是一个类,format是其中的一个方法用来格式化输出字符。

我们知道在现实的生活中有时候需要特殊的表示字符,例如表示货币,时间,那该怎么办呢?不用担心,c#中又格式化标识符,下面给大家介绍几个常用的格式化标识符

字母 含义

c或c currency 货币格式

d或d decimal 十进制格式(十进制整数,不要和.net的decimal数据类型混淆了)

e或e exponent 指数格式

f或f fixed point 固定精度格式

g或g general 常用格式

n或n 用逗号分割千位的数字,比如1234将会被变成1,234

p或p percentage 百分符号格式

r或r round-trip 圆整(只用于浮点数)保证一个数字被转化成字符串以后可以再被转回成同样的数字

x或x hex 16进制格式

示例如下:

static void main()   

                   int i=12345;

                   console.writeline("{0:c}",i);   //货币

                   console.writeline("{0:d}",i);   //十进制数

                   console.writeline("{0:e}",i);    //科学技术法

                   console.writeline("{0:f}",i);   // 浮点数表示法

                   console.writeline("{0:g}",i);   //g或g general 常用格式

                   console.writeline("{0:n}",i);   //n或n 用逗号分割千位的数字

                   console.readkey();

输出结果:

C# 占位符

d mm/dd/yyyy shortdatepattern(短日期模式)

d dddd,mmmm dd,yyyy longdatepattern(长日期模式)

f dddd,mmmm dd,yyyy hh:mm full date and time (long date and short time)(全日期和时间模式)

f dddd,mmmm dd,yyyy hh:mm:ss fulldatetimepattern (long date and long time)(长日期和长时间)

g mm/dd/yyyy hh:mm general (short date and short time)(通用模式,短日期和短时间)

g mm/dd/yyyy hh:mm:ss general (short date and long time)(通用模式,短日期和长时间)

m,m mmmm dd monthdaypattern(月天模式)

r,r ddd,dd mmm yyyy,hh':'mm':'ss 'gmt' rfc1123pattern (rfc1123模式)

s yyyy-mm-dd hh:mm:ss sortabledatetimepattern (conforms to iso 8601) using local time(使用本地时间的可排序模式)

t hh:mm shorttimepattern (短时间模式)

t hh:mm:ss longtimepattern(长时间模式)

u yyyy-mm-dd hh:mm:ss universalsortable-datetimepattern (conforms to iso 8601) using universal time(通用可排序模式)

u dddd,mmmm dd,yyyy,hh:mm:ss universalsortable-datetimepattern(通用可排序模式)

y,y mmmm,yyyy yearmonthpattern(年月模式)

         static void main()   

                  console.writeline("{0:d}",datetime.now);   //输出到天

                   console.writeline("{0:y}",datetime.now);   //输出到月

                   console.writeline("{0:m}",datetime.now);    //取出是那个月

                   console.writeline("{0:t}",datetime.now);   // 取长时间到秒

                   console.writeline("{0:t}",datetime.now);   //取短时间到分

                   console.writeline("{0:tt}",datetime.now);   //取出是上午还是下午     

  console.readkey();

C# 占位符

<a target="_blank" href="http://www.cnblogs.com/fumj/articles/2380290.html">原文地址</a>