c#中的常用ToString()方法总结

 更新时间:2020年6月25日 11:44  
很多类都重写了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)


Custom number formatting:

 

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  

The group separator is especially useful for formatting currency 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's regional 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

The 'U' specifier seems broken; that string certainly isn't sortable.

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%

相关文章

  • Unity中 ShaderGraph 实现旋涡传送门效果入门级教程(推荐)

    通过Twirl 旋转节点对Gradient Noise 梯度噪声节点进行操作,就可得到一个旋转的旋涡效果。具体实现代码跟随小编一起通过本文学习下吧...2021-07-11
  • Unity ScrollView实现自动吸附效果

    这篇文章主要为大家详细介绍了Unity ScrollView实现自动吸附效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-27
  • Unity Shader实现径向模糊效果

    这篇文章主要为大家详细介绍了Unity Shader实现径向模糊效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-09
  • C#中委托的基础入门与实现方法

    这篇文章主要给大家介绍了关于C#中委托的基础入门与实现方法的相关资料,究竟什么是委托,用最通俗易懂的话来讲,你就可以把委托看成是用来执行方法(函数)的一个东西,需要的朋友可以参考下...2021-08-03
  • Unity实现汽车前后轮倒车轨迹计算

    这篇文章主要为大家详细介绍了Unity实现汽车前后轮倒车轨迹计算,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-13
  • C# windows语音识别与朗读实例

    这篇文章主要为大家详细介绍了C# windows语音识别与朗读实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-26
  • C#实现简易计算器功能(附源码)

    这篇文章主要为大家详细介绍了C#实现简易计算器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-21
  • Unity UI实现循环播放序列图

    这篇文章主要为大家详细介绍了Unity UI实现循环播放序列图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-08
  • C#泛型的使用及示例详解

    这篇文章主要介绍了C#泛型的使用及示例,本文通过例子个大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-08-17
  • Unity实现透视滑动列表

    这篇文章主要为大家详细介绍了Unity实现透视滑动列表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-29
  • C# NullReferenceException解决案例讲解

    这篇文章主要介绍了C# NullReferenceException解决案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...2021-08-20
  • 运用.net core中实例讲解RabbitMQ高可用集群构建

    这篇文章主要介绍了运用.net core中实例讲解RabbitMQ高可用集群构建,文中相关示例代码讲解的非常清晰,感兴趣的小伙伴可以参考一下这篇文章,相信可以帮助到你...2021-09-07
  • C#多线程开发实战记录之线程基础

    线程是一个独立的运行单元,每个进程内部有多个线程,每个线程可以各自同时执行指令,每个线程有自己独立的栈,但是与进程内的其他线程共享内存,这篇文章主要给大家介绍了关于C#多线程开发实战记录之线程基础的相关资料,需要的朋友可以参考下...2021-09-03
  • .NET中创建对象的几种方式和对比

    在 .net 中,创建一个对象最简单的方法是直接使用 new (), 在实际的项目中可能还会用到反射,本文就介绍了几种创建方法,感兴趣的可以了解一下...2021-07-23
  • C# WebApi+Webrtc局域网音视频通话实例

    这篇文章主要为大家详细介绍了C# WebApi+Webrtc局域网音视频通话实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-26
  • C#实现验证码功能

    这篇文章主要为大家详细介绍了C#实现验证码功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-21
  • C# ManagementObjectSearcher操作window案例详解

    这篇文章主要介绍了C# ManagementObjectSearcher操作window案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...2021-08-27
  • WPF开发技巧之花式控件功能扩展详解

    这篇文章主要给大家介绍了关于WPF日常开发之花式控件功能扩展的相关资料,通过文中这个例子,我们可以对WPF的掌握会更深刻,需要的朋友可以参考下...2021-07-18
  • C#实现热更新服务器程序的具体过程

    什么是热更新?就是不停机更新,实时更新,这篇文章主要给大家介绍了关于C#实现热更新服务器程序的具体过程,通过热更新改善用户体验(节省流量、时间、操作程度),需要的朋友可以参考下...2021-07-12
  • C#仿QQ聊天窗口

    这篇文章主要为大家详细介绍了C#仿QQ聊天窗口,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-12