格式化
Format
Function | Parameters | Return value |
---|---|---|
Format | string format, params object[] args | string |
例如,下面的函数调用
Format("Name = {0}, hours = {1:hh}", myName, DateTime.Now)包含以下格式项:"{0}"和"{1:hh}"。它们将被替换为 myName 和 DateTime.Now 的值。结果如下:
Name = Alex, hours = 12每个格式项目的格式如下:
{index[,alignment][:formatString]}
- index - 基于零的整数,表示要格式化对象列表中的哪个元素;
- alignment - 可选整数,表示包含格式化值的区域的最小宽度。如果格式化值的长度小于 alignment,则该区域将填充空格。如果对齐方式为负数,格式化值将在区域内左对齐;如果对齐方式为正数,格式化值将右对齐;
- formatString - 格式指定符的可选字符串。
如果对浮点数值进行格式化,可以在格式化字符串后标明小数点位数:
Format Specifier
Name
Description
C or c
Currency
将数字转换为表示货币金额的字符串。Format("{0:C}", 10) ="$10.00"。
D or d
Decimal
该格式仅支持整数类型。数字会转换成一个十进制数字(0-9)字符串。Format("{0:D}",10)="10
E or e
Scientific
数字转换为"-d.ddd...E+ddd "或"-d.ddd...e+ddd "形式的字符串,其中每个 "d "表示一位数字(0-9)。
F or f
Fixed-point
将数字转换为形式为"-ddd.ddd... "的字符串,其中每个 "d "表示一位数字(0-9).Format("{0:F}", 10) = "10.00"
G or g
General
数字转换为最简洁的符号.Format("{0:G}", 10) = "10"
N or n
Number
将数字转换为形式为"-d,ddd,ddd.ddd... "的字符串,其中每个 "d "表示一位数字(0-9).Format("{0:N}", 1234.56) = "1,234.56"
P or p
Percent
将数字转换为表示百分数的字符串。转换后的数字乘以 100 才能显示为百分比。
X or x
Hexadecimal
数字转换为十六进制数字字符串。格式指定符号的大小写表示对大于 9 的十六进制数字使用大写还是小写字符。例如,使用 "X "产生 "ABCDEF",使用 "x "产生 "abcdef"。
Format("{0:C1}", 12.23) = "$12.2"如果标准数字格式指定符无法提供所需的格式化类型,可以使用自定义格式字符串:
使用实例:
Format character
Description
0
零占位符。如果被格式化的数值在格式字符串中 "0 "所在的位置有一位数字,那么该数字将被复制到结果字符串中。小数点前最左边的 "0 "和小数点后最右边的 "0 "的位置决定了结果字符串中始终存在的数字范围。
#
位数占位符。如果被格式化的数值在格式化字符串中出现 "#"的位置有数字,那么该数字将被复制到结果字符串中。否则,结果字符串中的该位置不会存储任何内容。
.
小数点。格式字符串中的第一个". "字符决定小数分隔符在格式化值中的位置。
,
千位分隔符。如果格式字符串包含", "字符,则输出结果将在小数分隔符左侧的每组三位数之间插入千位分隔符。
%
百分比占位符。如果格式字符串中出现"%"字符,则会在格式化前将数字乘以 100。
;
分隔符。; "字符用于分隔格式字符串中的正数、负数和零。
Format("{0:$#,##0.00}", 1024.25) = "$1,024.25" Format("{0:00%}", 0.25) = "25%" Format("{0:$#,##0.00;($#,##0.00);Zero}", 1024.25) = "$1,024.25" Format("{0:$#,##0.00;($#,##0.00);Zero}", -1024.25) = "($1,024.25)" Format("{0:$#,##0.00;($#,##0.00);Zero}", 0) = "Zero"下表描述了格式化 DateTime 值的标准格式指定符:
下表描述了自定义日期/时间格式指定符及其产生的结果。
Format Specifier
Name
Example
d
Short date pattern
"8/9/2009"
D
Long date pattern
"Sunday, August 09, 2009"
f
Full date/time pattern (short time)
"Sunday, August 09, 2009 2:44 PM"
F
Full date/time pattern (long time)
"Sunday, August 09, 2009 2:44:01 PM"
g
General date/time pattern (short time)
"8/9/2009 2:44 PM"
G
General date/time pattern (long time)
"8/9/2009 2:44:01 PM"
t
Short time pattern
"2:44 PM"
T
Long time pattern
"2:44:01 PM"
使用实例:
Format Specifier
Description
d
显示当前月份的日期,以 1 至 31(含 31)之间的数字表示。如果日期仅为个位数(1-9),则显示为个位数。
dd
显示当前月份的日期,以 1 到 31(含 31)之间的数字表示。如果日期仅为个位数(1-9),则格式化为前面加 0 (01-09)。
ddd
显示日的缩写名称。
dddd
显示日期的全称。
f or F
显示秒分数的最有效数字。
h
显示范围为 1-12 的小时。如果小时是个位数(1-9),则显示为个位数。
hh 在 1-12 范围内显示小时。如果小时为个位数 (1-9),则以前面的 0 (01-09) 格式显示。
hh
在 0-23 范围内显示小时。如果小时为个位数 (1-9),则显示为个位数。
HH 在 0-23 范围内显示小时。如果小时是个位数(1-9),则以前面的 0 格式显示(01-09)。
H
如果分钟是个位数 (0-9),则显示为个位数。
HH
显示 0-59 范围内的分钟。如果分钟是个位数 (0-9),则以前面的 0 (01-09) 格式显示。
m
显示范围为 0-59 的分钟。如果分钟是个位数 (0-9),则显示为个位数。
mm
显示月份,以 1 到 12(含 12)之间的数字表示。如果月份是个位数 (1-9),则以前面的 0 格式显示 (01-09)。
M
显示月份,以 1 至 12(含 12)之间的数字表示。如果月份是个位数(1-9),则显示为个位数。
MM
显示月份,以 1 到 12(含 12)之间的数字表示。如果月份是个位数 (1-9),则以前面的 0 格式显示 (01-09)。
MMM
显示月份的缩写名称。
MMMM
显示月份的全称。
s
显示范围为 0-59 的秒。如果秒是个位数 (0-9),则只显示个位数。
ss
显示 0-59 范围内的秒。如果秒是个位数 (0-9),则以前面的 0 格式显示 (01-09)。
t
显示 A.M./P.M. 代号的第一个字符。
tt
显示 A.M./P.M. 代号。
y
显示最大两位数的年份。年份的前两位数省略。如果年份是个位数(1-9),则显示为个位数。
yy
显示最大两位数的年份。省略年份的前两位数。如果年份是个位数 (1-9),则格式化为前面加 0 (01-09)
yyyy
显示年份,包括世纪。如果年份长度小于四位数,则根据需要添加前面的零,使显示的年份长度为四位数。
z
显示系统当前时区的时区偏移量,单位仅为整数小时。偏移量总是以前导符号显示(零显示为 "+0"),表示比格林尼治平均时间早几个小时(+)或比格林尼治平均时间晚几个小时(-)。如果偏移量是个位数(0-9),则显示为带适当前导符号的个位数。
zz
仅以整数小时显示系统当前时区的时区偏移。偏移量总是以前导符号或后置符号显示(零显示为 "+00"),表示比格林尼治平均时间早几个小时(+)或比格林尼治平均时间晚几个小时(-)。如果偏移量是个位数(0-9),则格式化为前置 0(01-09),并带有相应的前置符号。
zzz
以小时和分钟为单位显示系统当前时区的时区偏移。偏移量总是以前导符号或后置符号显示(零显示为 "+00:00"),表示比格林威治平均时早几个小时(+)或比格林威治平均时晚几个小时(-)。数值范围为 -12:00 至 +13:00。如果偏移量是个位数(0-9),则格式化为前置 0(01-09),并带有适当的前导符号
:
时间分隔符。
/
日期分隔符。
Format("{0:d MMM yyyy}", DateTime.Now) = "9 Aug 2009" Format("{0:MM/dd/yyyy}", DateTime.Now) = "08/09/2009" Format("{0:MMMM, d}", DateTime.Now) = "August, 9" Format("{0:HH:mm}", DateTime.Now) = "16:07" Format("{0:MM/dd/yyyy hh:mm tt}", DateTime.Now) = "08/09/2009 04:07 PM"
FormatCurrency
Function | Parameters | Return value |
---|---|---|
FormatCurrency | object value | string |
使用 Windows 区域设置将指定值格式化为货币。
例如
FormatCurrency(1.25) = "$1.25"
Function | Parameters | Return value |
---|---|---|
FormatCurrency | object value, int decimalDigits | string |
将指定的数值格式化为货币。参数 "decimalDigits "表示小数点右边显示的位数。
例如
FormatCurrency(1.25, 1) = "$1.3"
FormatDateTime
Function | Parameters | Return value |
---|---|---|
FormatDateTime | DateTime value | string |
使用 Windows 区域设置将指定值格式化为日期/时间。此函数不会在生成的字符串中包含中性值。
例如
FormatDateTime(#1/1/2009#) = "01/01/2009" FormatDateTime(#1/1/2009 1:30#) = "01/01/2009 1:30:00 AM" FormatDateTime(#1:30#) = "1:30:00 AM"
Function | Parameters | Return value |
---|---|---|
FormatDateTime | DateTime value, string format | string |
使用参数 "format"(格式)中指定的格式,将指定值格式化为日期/时间。该参数的有效值为
- "长日期”
- "短日期”
- "长时间"
- "短时间"
FormatDateTime(#1/1/2009 1:30#, "Long Date") = "Thursday, January 01, 2009" FormatDateTime(#1/1/2009#, "Short Date") = "01/01/2009" FormatDateTime(#1:30#, "Short Time") = "01:30 AM" FormatDateTime(#1:30#, "Long Time") = "1:30:00 AM"
FormatNumber
Function | Parameters | Return value |
---|---|---|
FormatNumber | object value | string |
使用 Windows 区域设置将指定值格式化为数字。
例如
FormatNumber(1234.56) = "1,234.56"
Function | Parameters | Return value |
---|---|---|
FormatNumber | object value, int decimalDigits | string |
将指定数值格式化为数字。参数 "decimalDigits "表示小数点右边显示的位数。
例如
FormatNumber(1234.56, 1) = "1,234.6"
FormatPercent
Function | Parameters | Return value |
---|---|---|
FormatPercent | object value | string |
示例
FormatPercent(0.15) = "15.00%"
点击复制
Function | Parameters | Return value |
---|---|---|
FormatPercent | object value, int decimalDigits | string |
例如
FormatPercent(0.15, 0) = "15%"
如需下载fastreport最新试用版,请点产品名跳转产品下载页>>