定义

格式说明符的语法由3个字段组成:索引号、对齐说明符和格式字段。String.Format和WriteLine都遵守同样的格式化规则。

对齐说明符

对齐说明符表示了字段中字符的最小宽度。对齐说明符有如下特性。

1、对齐说明符是可选的,并且使用逗号和索引号分离。

2、它由一个正整数或负整数组成。

3、整数表示了字段使用字符的最少数量。

4、符号表示了右对齐或左对齐。正数表示右对齐,负数表示左对齐。

5、如果要表示的字符数比说明符中指定的字符数少,那么其余字符会使用空格填充;

6、如果要表示的字符数多于指定的字符数,对齐说明符会被忽略,并且使用所需的字符进行表示。

格式字段

格式字段指定了数字应该以哪种形式表示。例如应当被当做货币、十进制数、还是定点符号来表示。格式字段有3部分。

1、冒号后必须紧跟格式说明符,中间不能有空格。

2、格式说明符是一个字母字符,是9个内置字符格式之一。字符可以是大写或小写形式。大小写对于某些说明符来说比较重要,而对于另外一些说明符来说则不重要。

3、精度说明符是可选的,由1~2位数字组成。它的实际意义取决于格式说明符。  

示例:

标准格式字符串

 字符

说明   示例 输出
C  货币   string.Format("{0:C3}", 2) ¥2.000(英文操作系统结果:$0.20)
D 十进制 string.Format("{0:D3}", 2) 002
F 定点 string.Format{"0:F4",123.123} 123.1230
E

科学计数法

string.Format{"0:E4",0.123456} 1.2346E+001
G 常规 string.Format("{0:G}", 2) 2
X 十六进制 string.Format("{0:X000}", 12) C
N 逗号或空格隔开数字 string.Format("{0:N}", 250000) 250,000.00(默认精度2位)
P 百分比 string.Format{"0:P",0.123456}

12.34%(默认精度2位)

R 往返过程 string.Format{"0:R",0.123456}  0.123456

日期格式化

string.Format("{0:d}",System.DateTime.Now) 结果为:2016-9-18 (注意:月份不是09)

string.Format("{0:D}",System.DateTime.Now) 结果为:2016年9月18日

string.Format("{0:f}",System.DateTime.Now) 结果为:2016年9月18日 18:14

string.Format("{0:F}",System.DateTime.Now) 结果为:2016年9月18日 18:14:26

string.Format("{0:g}",System.DateTime.Now) 结果为:2016-9-18 18:14

string.Format("{0:G}",System.DateTime.Now) 结果为:2016-9-18 18:14:26

string.Format("{0:m}",System.DateTime.Now) 结果为:9月18日

string.Format("{0:t}",System.DateTime.Now) 结果为:18:14

string.Format("{0:T}",System.DateTime.Now) 结果为:18:14:26

类似

string t1 = System.DateTime.Now.ToShortDateString();    t1=2016/9/18
string t2 = System.DateTime.Now.ToShortTimeString();    t2=18:14
string t3 = System.DateTime.Now.ToLongDateString();     t3=2016年9月18日
string t4 = System.DateTime.Now.ToLongTimeString();     t4=18:14:26

【C#】 格式化说明符 string.Format WriteLine的更多相关文章

  1. JS字符串格式化函数 string.format

    原生JS写的仿C#的字符串format函数,在此基础上又增加了便于JS使用的字面量对象参数. 参照C#中的规则,调用的时候会检测字符串格式,如果字符串格式不规范,或者传入的参数为null或undefi ...

  2. java字符串格式化:String.format()方法的使用

    转自:http://kgd1120.iteye.com/blog/1293633 常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的读者应 ...

  3. 我的Android进阶之旅------>Java字符串格式化方法String.format()格式化float型时小数点变成逗号问题

    今天接到一个波兰的客户说有个APP在英文状态下一切运行正常,但是当系统语言切换到波兰语言的时候,程序奔溃了.好吧,又是我来维护. 好吧,先把系统语言切换到波兰语,切换到波兰语的方法查看文章 我的And ...

  4. Java基础(三十五)Math、Random类和数字格式化(String.format方法)

    一.Math类 Math类常用的方法: public static long abs (double a) 返回a的绝对值 public static double max (double a,dou ...

  5. 【转】string.Format对C#字符串格式化

    转自:http://blog.csdn.net/samsone/article/details/7556781 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) str ...

  6. string.Format格式化用法详解

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...

  7. string.Format 格式化时间,货币

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...

  8. C# string.Format格式化时间或货币

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...

  9. string.Format对C#字符串格式化

    String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项.Stri ...

随机推荐

  1. SLES 10安装Oracle10gR2笔记

    SLES 10安装Oracle10gR2笔记 一. 数据库安装 . 安装C/C++ Compiler gcc --version验证是否安装 . 验证Service Pack版本 SPident –v ...

  2. python 最小公倍数

    最小公倍数 求解两个整数(不能是负数)的最小公倍数 方法一:穷举法 def LCM(m, n): if m*n == 0: return 0 if m > n: lcm = m else: lc ...

  3. Cheatsheet: 2016 06.01 ~ 6.30

    Other Swift for the Java guy: Part 1 – Getting Started Building a better code review process Creatin ...

  4. 转行做开发的Wiki:找好方向

    案 我是一个从建筑行业转行过来的后端工程师,转行来写代码了.最近发现经常有同学和网上的朋友问我一些转行的问题,零零散散地回答莫不如写一篇文章,以后回答此类问题就方便多了. 我的专业是给排水,属于非常传 ...

  5. 启动windows bat文件出现错误,直接关闭

    如果执行运行run.bat,提示错误直接退出后,可以直接使用cmd命令进入当前目录,运行,会显示错误信息.

  6. iOS app 企业内部发布及HTTPS服务器配置

    转自: http://www.cnblogs.com/cocoajin/p/4082488.html iOS企业内部发布及HTTPS服务器配置 一:所需的条件 1. 苹果开发者证书,企业版 299$ ...

  7. volatile关键字并不能作为线程计数器

    在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉. Java语言是支持多线程的,为了解决线程并发的问题,在语 ...

  8. Kafka 高可用设计

    Kafka 高可用设计 2016-02-28 杜亦舒 Kafka在早期版本中,并不提供高可用机制,一旦某个Broker宕机,其上所有Partition都无法继续提供服务,甚至发生数据丢失对于分布式系统 ...

  9. 远程重装centos6

    写得比较简略,也是综合网络上的文章,总结一下实操的经验 获取启动内核 wget -P /boot/ http://mirrors.163.com/centos/6.8/os/x86_64/images ...

  10. Python学习---除法

    python有两种除法,普通除法 a/b ,不论a,b精度 得到的都是浮点数. 4/2 = 2.0    3/5 = 0.6 floor除法,a//b , 得到一个舍弃小数位的整数结果,所以结果永远是 ...