问题:C# ToString("P");结果:c#中的常用ToString()方法总结
2015-12-21 17:41
525 查看
c#中的常用ToString()方法总结
很多类都重写了ToString方法, 导致很多类的tostring到底执行了什么,有哪些参数,都不清楚对于int,double等的tostring:
C | 货币 | 2.5.ToString("C") | ¥2.50 |
D | 十进制数 | 25.ToString("D5") | 00025 |
E | 科学型 | 25000.ToString("E") | 2.500000E+005 |
F | 固定点 | 25.ToString("F2") | 25.00 |
G | 常规 | 2.5.ToString("G") | 2.5 |
N | 数字 | 2500000.ToString("N") | 2,500,000.00 |
X | 十六进制 | 255.ToString("X") | FF |
格式符 | 应 用 | 含 义 | 示 例 |
C | 数字类型 | 专用场合的货币值 | $4834.50 (USA) £4834.50 (UK) |
D | 只用于整数类型 | 一般的整数 | 4834 |
E | 数字类型 | 科学计数法 | 4.834E+003 |
F | 数字类型 | 小数点后的位数固定 | 4384.50 |
G | 数字类型 | 一般的数字 | 4384.5 |
N | 数字类型 | 通常是专用场合的数字 格式 | 4,384.50 (UK/USA) 4 384,50 (欧洲大陆) |
P | 数字类型 | 百分比计数法 | 432,000.00% |
X | 只用于整数类型 | 16进制格式 | 1120 (如果要显示0x1120,需要写上0x) |
Specifier | Type | Example | Output (Passed Double 1500.42) | Note |
0 | Zero placeholder | {0:00.0000} | 1500.4200 | Pads with zeroes. |
# | Digit placeholder | {0:(#).##} | (1500).42 | |
. | Decimal point | {0:0.0} | 1500.4 | |
, | Thousand separator | {0:0,0} | 1,500 | Must be between two zeroes. |
,. | Number scaling | {0:0,.} | 2 | Comma adjacent to Period scales by 1000. |
% | Percent | {0:0%} | 150042% | Multiplies by 100, adds % sign. |
e | Exponent placeholder | {0:00e+0} | 15e+2 | Many exponent formats available. |
; | Group separator | see below |
values which require that negative values be enclosed in parentheses.
This currency formatting example at the bottom of this document makes it
obvious:
Dates
Note that date formatting is especially dependant on the system'sregional settings; the example strings here are from my local locale.
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 |
Custom date formatting:
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 |
Enumerations
Specifier | Type |
g | Default (Flag names if available, otherwise decimal) |
f | Flags always |
d | Integer always |
x | Eight digit hex. |
Some Useful Examples
String.Format("{0:$#,##0.00;($#,##0.00);Zero}", value);This
will output "$1,240.00" if passed 1243.50. It will output the same
format but in parentheses if the number is negative, and will output the
string "Zero" if the number is zero.
String.Format("{0:(###) ###-####}", 18005551212);
This will output "(800) 555-1212".
变量.ToString()
字符型转换 转为字符串
12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039 (16进制)
12345.ToString("p"); //生成 1,234,500.00%
相关文章推荐
- C#用正则判断字符串含有数字,并且将数字的颜色更改
- c#中如何判断字符串是否为数字
- c#范型List的Sort方法详解
- C# WinForm UserControl模拟Form的AcceptButton功能
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- 【小方法】 判断是否经过事件
- C#基础——密码加密
- this.Invoke参数计数不匹配
- C# 将文件转化成byte[]数组
- C# 中基础函数
- c#winform将全局异常抛出,不用大量写try()catch()
- c#基础精华01(强调代码规范,虚方法,抽象方法,接口)
- c#基础精华01(强调代码规范,虚方法,抽象方法,接口)
- c#面向对象基础 类、方法、方法重载
- c#删除转义字符的方法,删除\0后所有字符串(菜鸟级别)
- c#_index_1
- C# Expression表达式笔记
- 关于C# WinForm中控件属性在属性管理器中不可见
- C# 遍历DLL导出函数