格式项都采用如下形式:

{index[,alignment][:formatString]}

其中"index"指索引占位符,这个肯定都知道;

",alignment"按字面意思显然是对齐方式,以","为标记;

":formatString"就是对输出格式的限定,以":"为标记。

alignment:可选,是一个带符号的整数,指示首选的格式化字段宽度。如果“对齐”值小于格式化字符串的长度,“对齐”会被忽略,并且使用格式化字符串的长度作为字段宽度。如果“对齐”为正数,字段的格式化数据为右对齐;如果“对齐”为负数,字段的格式化数据为左对齐。如果需要填充,则使用空白。如果指定“对齐”,就需要使用逗号。

formatString:由标准或自定义格式说明符组成.

下表是从网上得来:

字符

说明

示例

输出

C

货币

string.Format("{0:C3}", 2)

$2.000

D

十进制

string.Format("{0:D3}", 2)

002

E

科学计数法

1.20E+001

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

Specifier

Type

Format

Output
(Passed
Double 1.42)

Output
(Passed
Int -12400)

c

Currency

{0:c}

$1.42

-$12,400

d

Decimal (Whole number)

{0:d}

System.
FormatException

-12400

e

Scientific

{0:e}

1.420000e+000

-1.240000e+004

f

Fixed point

{0:f}

1.42

-12400.00

g

General

{0:g}

1.42

-12400

n

Number with commas for thousands

{0:n}

1.42

-12,400

r

Round trippable

{0:r}

1.42

System.
FormatException

x

Hexadecimal

{0:x4}

System.
FormatException

cf90

 

Specifier

Type

Example (Passed System.DateTime.Now)

d

Short date

10/12/2002

D

Long date

December 10, 2002

t

Short time

10:11 PM

T

Long time

10:11:29 PM

f

Full date & time

December 10, 2002 10:11 PM

F

Full date & time (long)

December 10, 2002 10:11:29 PM

g

Default date & time

10/12/2002 10:11 PM

G

Default date & time (long)

10/12/2002 10:11:29 PM

M

Month day pattern

December 10

r

RFC1123 date string

Tue, 10 Dec 2002 22:11:29 GMT

s

Sortable date string

2002-12-10T22:11:29

u

Universal sortable, local time

2002-12-10 22:13:50Z

U

Universal sortable, GMT

December 11, 2002 3:13:50 AM

Y

Year month pattern

December, 2002

 

Specifier

Type

Example

Example Output

dd

Day

{0:dd}

10

ddd

Day name

{0:ddd}

Tue

dddd

Full day name

{0:dddd}

Tuesday

f, ff, ...

Second fractions

{0:fff}

932

gg, ...

Era

{0:gg}

A.D.

hh

2 digit hour

{0:hh}

10

HH

2 digit hour, 24hr format

{0:HH}

22

mm

Minute 00-59

{0:mm}

38

MM

Month 01-12

{0:MM}

12

MMM

Month abbreviation

{0:MMM}

Dec

MMMM

Full month name

{0:MMMM}

December

ss

Seconds 00-59

{0:ss}

46

tt

AM or PM

{0:tt}

PM

yy

Year, 2 digits

{0:yy}

02

yyyy

Year

{0:yyyy}

2002

zz

Timezone offset, 2 digits

{0:zz}

-05

zzz

Full timezone offset

{0:zzz}

-05:00

:

Separator

{0:hh:mm:ss}

10:43:20

/

Separator

{0:dd/MM/yyyy}

10/12/2002

示例:

// Console.WriteLine 中各种数据格式的输出

Console.WriteLine("{0, 8
:C}", 2);     // $2.00

Console.WriteLine("{0, 8
:C3}", 2);    //
$2.000

Console.WriteLine("{0
:D3}", 2);       //
002

Console.WriteLine("{0
:E}", 2);        //
2.000000E+000

Console.WriteLine("{0
:G}", 2);        //
2

Console.WriteLine("{0
:N}", 2500000.00);    //
2,500,00.00

Console.WriteLine("{0
:x4}", 12);      //
000c

Console.WriteLine("{0, 2
:x}", 12);    //  c

Console.WriteLine("{0
:000.000}", 12.23);   // 012.230

Console.WriteLine("{0
:r}", 15.62);    //
15.62

Console.WriteLine("{0
:d}", System.DateTime.Now);    // 2012-3-27

Console.WriteLine("{0
:D}", System.DateTime.Now);    // 2012年3月27日

Console.WriteLine("{0
:t}", System.DateTime.Now);    //
11:43

Console.WriteLine("{0
:T}", System.DateTime.Now);    //
11:43:34

Console.WriteLine("{0
:f}", System.DateTime.Now);    // 2012年3月27日 11:43

Console.WriteLine("{0
:F}", System.DateTime.Now);    // 2012年3月27日 11:43:34

Console.WriteLine("{0
:g}", System.DateTime.Now);    // 2012-3-27 11:43

Console.WriteLine("{0
:G}", System.DateTime.Now);    // 2012-3-27 11:43:34

Console.WriteLine("{0
:M}", System.DateTime.Now);    // 3月27日

Console.WriteLine("{0
:r}", System.DateTime.Now);// Tue, 27 Mar 2012 11:43:34
GMT

Console.WriteLine("{0
:s}", System.DateTime.Now);    // 2012-03-27T11:43:34

Console.WriteLine("{0
:u}", System.DateTime.Now);    // 2012-03-27 11:43:34Z

Console.WriteLine("{0
:U}", System.DateTime.Now);    // 2012年3月27日 3:43:34

Console.WriteLine("{0
:Y}", System.DateTime.Now);    // 2012年3月

Console.WriteLine("{0
:dd}", System.DateTime.Now);   // 27

Console.WriteLine("{0
:ddd}", System.DateTime.Now); 
// 二

Console.WriteLine("{0
:dddd}", System.DateTime.Now); // 星期二

Console.WriteLine("{0
:f}", System.DateTime.Now);    // 2012年3月27日 11:46

Console.WriteLine("{0
:ff}", System.DateTime.Now);   // 18

Console.WriteLine("{0
:fff}", System.DateTime.Now);  //
187

Console.WriteLine("{0
:ffff}", System.DateTime.Now); // 1875

Console.WriteLine("{0
:fffff}", System.DateTime.Now); // 18750

Console.WriteLine("{0
:gg}", System.DateTime.Now);   // 公元

Console.WriteLine("{0
:ggg}", System.DateTime.Now); 
// 公元

Console.WriteLine("{0
:gggg}", System.DateTime.Now); // 公元

Console.WriteLine("{0
:ggggg}", System.DateTime.Now);     //
公元

Console.WriteLine("{0
:gggggg}", System.DateTime.Now);    // 公元

Console.WriteLine("{0
:hh}", System.DateTime.Now);   // 11

Console.WriteLine("{0
:HH}", System.DateTime.Now);   // 11

Console.WriteLine("{0
:mm}", System.DateTime.Now);   // 50

Console.WriteLine("{0
:MM}", System.DateTime.Now);   // 03

Console.WriteLine("{0
:MMM}", System.DateTime.Now); 
// 三月

Console.WriteLine("{0
:MMMM}", System.DateTime.Now); // 三月

Console.WriteLine("{0
:ss}", System.DateTime.Now);   // 43

Console.WriteLine("{0
:tt}", System.DateTime.Now);   // 上午

Console.WriteLine("{0
:yy}", System.DateTime.Now);   // 12

Console.WriteLine("{0
:yyyy}", System.DateTime.Now); // 2012

Console.WriteLine("{0
:zz}", System.DateTime.Now);   // +08

Console.WriteLine("{0
:zzz}", System.DateTime.Now);  //
+08:00

Console.WriteLine("{0
:hh:mm:ss}", System.DateTime.Now);  //
11:43:34

Console.WriteLine("{0
:dd/MM/yyyy}", System.DateTime.Now); // 27-03-2012

C#中格式化数据的输出的更多相关文章

  1. 【转】【整理】将Linux脚本中的正常输出,警告,错误等信息输出到文件中

     本文来自:http://blog.csdn.net/woshinia/article/details/18040063   很早以前  编译的时候 就在用 2>&1,但是一直没有生成一 ...

  2. 在Servlet中出现一个输出中文乱码的问题(已经解)。

    在Servlet中出现一个输出中文乱码的问题,已经解. @Override public void doPost(HttpServletRequest reqeust, HttpServletResp ...

  3. iOS案例:读取指定txt文件,并把文件中的内容输出出来

    用到的是NSString中的initWithContentsOfFile: encoding方法 // // main.m // 读取指定文件并输出内容 // // Created by Apple ...

  4. log4j中Spring控制台输出Debug级信息过多解决方法

    log4j中Spring控制台输出Debug级信息过多解决方法 >>>>>>>>>>>>>>>>> ...

  5. Qt在VS2013或Qt Creator 中的控制台输出方式设置

    首先值得注意的是:在写程序的时候,项目保存路径不要涉及到中文,否则容易出错! 一.Qt在VS2013中的控制台输出方式: 注意:这里是而不是Qt Application. 然后直接点击finish即可 ...

  6. JS中格式化数据保留两位小数

    问题:在JS中格式化数据保留两位小数的函数的多种方法 最好方法: 保留两位好像是这样吧     var   a   =   9.39393;     alert(a.toFixed(2)); 说明: ...

  7. 使用命令将logcat中的内容输出到文本文件中

    网上搜集的方法,自己只是试了一下第一种,很好用,如果是/mylogcat.txt 直接保存在了d盘,我猜是直接保存在了sdk所在的盘的根目录下,希望对大家有帮助 使用如下命令可以将logcat中的内容 ...

  8. eclipse中console的输出行数控制

    eclipse中console的输出行数控制 开发中,会遇到当输出大量的sql语句或者错误的时候,往往会因为console输出的限制而不能完整显示,所以我们自己就需要迫切的增加显示的行数,这样 就可以 ...

  9. 基础篇:1.JavaScript运行在html中,引用有几种方式?—— 6.js中常用的输出方式?

    书接上文,上文提到若干条JavaScript的基础性知识,大部分都是一些概念性的东西,本着认真严谨的态度,我们要认真对待,有些条目的问题是某个知识点的周边延伸,为节约篇幅,就一起整理了,如有描述不对的 ...

随机推荐

  1. 基于ProGuard-Maven-Plugin的自定义代码混淆插件

    介绍 大家可能都会碰到一些代码比较敏感的项目场景,这个时候代码被反编译看到就不好了,这个时候就需要代码混淆插件来对代码进行混淆了. 基于Maven的项目一般会去考虑使用proguard-maven-p ...

  2. 【转】WF4.0 (基础篇)

    转自:http://www.cnblogs.com/foundation/category/215023.html 作者:WXWinter  ——  兰竹菊梅★春夏秋冬☆ —— wxwinter@16 ...

  3. SGU 163.Wise King

    一道题目长的水题.... 总结就一句话,给出n个(-3~3)的数,一个数m,取任意个数是使这些数的m次幂之和最大. code #include <iostream> #include &l ...

  4. python3 读取大文件分解成若干小文件

    有个数据实在太大了,有1.7G,打开慢,改文件也慢,我们将其分解成若干个中等文件 #!/usr/bin/env python3 # -*- coding: utf-8 -*-   f = open(& ...

  5. ubuntu 升级命令

    apt-get update && apt-get dist-upgrade

  6. PHP框架_ThinkPHP数据库

    目录 1.ThinkPHP数据库配置 2.ThinkPHP数据库实例化模型 3.ThinkPHP数据库CURD操作 4.ThinkPHP数据库连贯操作 1.ThinkPHP数据库配置 App/Conf ...

  7. smarty中判断一个变量是否存在于一个数组中或是否存在于一个字符串中?

    smarty支持php的系统函数可以直接使用{if in_array($str, $arr) || strpos($str, $string)} yes {else} no{/if}

  8. 关于system(”pause“);的作用和意义

    注意:不要再return 的语句之后加,那样就执行不到了. system() 是调用系统命令:pause 暂停命令: 如果加有  system(”pause“): 这样在运行到此处时,会显示“Pres ...

  9. springtest+juint开发测试如下:

    项目结构目录如下: UserMapper.java 为接口文件.User 为实体类.UserMapper.xml 为对应mybatis的xml文件.test为对应的测试包 applicationtes ...

  10. [BZOJ 3626] [LNOI2014] LCA 【树链剖分 + 离线 + 差分询问】

    题目链接: BZOJ - 3626 题目分析 考虑这样的等价问题,如果我们把一个点 x 到 Root 的路径上每个点的权值赋为 1 ,其余点的权值为 0,那么从 LCA(x, y) 的 Depth 就 ...