C#中格式化数据的输出
格式项都采用如下形式:
{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 |
Output |
|
c |
Currency |
{0:c} |
$1.42 |
-$12,400 |
|
d |
Decimal (Whole number) |
{0:d} |
System. |
-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. |
|
x |
Hexadecimal |
{0:x4} |
System. |
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#中格式化数据的输出的更多相关文章
- 【转】【整理】将Linux脚本中的正常输出,警告,错误等信息输出到文件中
本文来自:http://blog.csdn.net/woshinia/article/details/18040063 很早以前 编译的时候 就在用 2>&1,但是一直没有生成一 ...
- 在Servlet中出现一个输出中文乱码的问题(已经解)。
在Servlet中出现一个输出中文乱码的问题,已经解. @Override public void doPost(HttpServletRequest reqeust, HttpServletResp ...
- iOS案例:读取指定txt文件,并把文件中的内容输出出来
用到的是NSString中的initWithContentsOfFile: encoding方法 // // main.m // 读取指定文件并输出内容 // // Created by Apple ...
- log4j中Spring控制台输出Debug级信息过多解决方法
log4j中Spring控制台输出Debug级信息过多解决方法 >>>>>>>>>>>>>>>>> ...
- Qt在VS2013或Qt Creator 中的控制台输出方式设置
首先值得注意的是:在写程序的时候,项目保存路径不要涉及到中文,否则容易出错! 一.Qt在VS2013中的控制台输出方式: 注意:这里是而不是Qt Application. 然后直接点击finish即可 ...
- JS中格式化数据保留两位小数
问题:在JS中格式化数据保留两位小数的函数的多种方法 最好方法: 保留两位好像是这样吧 var a = 9.39393; alert(a.toFixed(2)); 说明: ...
- 使用命令将logcat中的内容输出到文本文件中
网上搜集的方法,自己只是试了一下第一种,很好用,如果是/mylogcat.txt 直接保存在了d盘,我猜是直接保存在了sdk所在的盘的根目录下,希望对大家有帮助 使用如下命令可以将logcat中的内容 ...
- eclipse中console的输出行数控制
eclipse中console的输出行数控制 开发中,会遇到当输出大量的sql语句或者错误的时候,往往会因为console输出的限制而不能完整显示,所以我们自己就需要迫切的增加显示的行数,这样 就可以 ...
- 基础篇:1.JavaScript运行在html中,引用有几种方式?—— 6.js中常用的输出方式?
书接上文,上文提到若干条JavaScript的基础性知识,大部分都是一些概念性的东西,本着认真严谨的态度,我们要认真对待,有些条目的问题是某个知识点的周边延伸,为节约篇幅,就一起整理了,如有描述不对的 ...
随机推荐
- Wdcp缺少mod_rewite模块
1.下载apache源码包,解压并查找到mod_rewrite.c文件 tar -zxvf httpd-2.2.27.tar.gz cd httpd-2.2.27 [root@localhost ht ...
- java 多线程sleep和wait的区别
对于sleep()方法,我们首先要知道该方法是属于Thread类中的.而wait()方法,则是属于Object类中的. sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监 ...
- 一次性安装src.rpm编译所依赖的软件包
yum-builddep SRPMS/fcitx-4.2.8.4-4.1.cgdl21.src.rpm NAME yum-builddep - install missing depend ...
- 离散傅里叶变换(DFT)
目录 一.研究的意义 二.DFT的定义 三.DFT与傅里叶变换和Z变换的关系 四.DFT的周期性 五.matlab实验 五.1 程序 ...
- BZOJ 3240 矩阵游戏
Description 婷婷是个喜欢矩阵的小朋友,有一天她想用电脑生成一个巨大的\(n\)行\(m\)列的矩阵(你不用担心她如何存储).她生成的这个矩阵满足一个神奇的性质:若用\(F[i][j]\)来 ...
- IE7和IE8出现的计算判断问题
吸住底部菜单 IE7和IE8下会卡死的算法 ; } function fixedBar(){ var _height=$(this).height()+$(this).scrollTop(); var ...
- codeforces C. k-Tree
思路:dp[i][j]表示和为i,最大值为j的方案数. #include <cstdio> #include <cstring> #include <algorithm& ...
- cf C. Dominoes
http://codeforces.com/contest/394/problem/C 题意:有n*m个骨牌,每个骨牌上有四种样式(“01,10,11,00”),让你重新排列成一个N*M的矩阵,使2* ...
- Maven实战七
转载:http://www.iteye.com/topic/973166 前言 Maven,发音是[`meivin],"专家"的意思.它是一个很好的项目管理工具,很早就进入了我的必 ...
- 五种I/O 模式——阻塞(默认IO模式),非阻塞(常用语管道),I/O多路复用(IO多路复用的应用场景),信号I/O,异步I/O
五种I/O 模式——阻塞(默认IO模式),非阻塞(常用语管道),I/O多路复用(IO多路复用的应用场景),信号I/O,异步I/O 五种I/O 模式:[1] 阻塞 I/O ...