Format 函数参数包括:一个基本文本字符串、一些占位符(通常由%符号标出)和一个数值数组,数组中每个值对应一个占位符。例如,把两个数字格式化为字符串的代码如下:
Format ( 'First %d, Second %d ', [n1, n2]);
其中n1和n2是两个整数值,第一个占位符由第一个值替代,第二个占位符由第二个值替代,以此类推。如果占位符输出类型(由%符号后面的字母表示)与对应的参数类型不匹配,将产生一个运行时间错误,因此设置编译时间类型检查会有利于Format 函数的使用。
除了%d外,Format 函数还定义了许多占位符,见表7.1。这些占位符定义了相应数据类型的默认输出,你可以用更深一层的格式化约束改变默认输出,例如一个宽度约束决定了输出中的字符个数,而精度约束决定了小数点的位数。例如
Format ( '%8d ', [n1]);
该句把数字n1转换成有8个字符的字符串,并通过填充空白使文本右对齐,左对齐用减号(-) 。
表 7.1: Format函数的占位符
占位符 说明
d (decimal) 将整型值转换为十进制数字字符串
x (hexadecimal) 将整型值转换为十六进制数字字符串
p (pointer) 将指针值转换为十六进制数字字符串
s (string) 拷贝字符串、字符、或字符指针值到一个输出字符串
e (exponential) 将浮点值转换为指数表示的字符串
f (floating point) 将浮点值转换为浮点表示的字符串
g (general) 使用浮点或指数将浮点值转换为最短的十进制字符串
n (number) 将浮点值转换为带千位分隔符的浮点值
m (money) 将浮点值转换为现金数量表示的字符串,转换结果取决于地域设置,详见Delphi帮助文件的Currency and date/time formatting variables主题
首部 function Format(const Format: string; const Args: array of const): string; $[SysUtils.pas
功能 返回按指定方式格式化一个数组常量的字符形式
说明 这个函数是我在Delphi中用得最多的函数,现在就列举几个例子给你个直观的理解
"% " [索引 ": "] [ "- "] [宽度] [ ". " 摘要] 类型格式化命令format参数
Format( 'x=%d ', [12]); // 'x=12 ' //最普通
Format( 'x=%3d ', [12]); // 'x= 12 ' //指定宽度
Format( 'x=%f ', [12.0]); // 'x=12.00 ' //浮点数
Format( 'x=%.3f ', [12.0]); // 'x=12.000 ' //指定小数
Format( 'x=%.*f ', [5, 12.0]); // 'x=12.00000 ' //动态配置
Format( 'x=%.5d ', [12]); // 'x=00012 ' //前面补充0
Format( 'x=%.5x ', [12]); // 'x=0000C ' //十六进制
Format( 'x=%1:d%0:d ', [12, 13]); // 'x=1312 ' //使用索引
Format( 'x=%p ', [nil]); // 'x=00000000 ' //指针
Format( 'x=%1.1e ', [12.0]); // 'x=1.2E+001 ' //科学记数法
Format( 'x=%% ', []); // 'x=% ' //得到 "% "
S := Format( '%s%d ', [S, I]); //S := S + StrToInt(I); //连接字符串
参考 proceduer SysUtils.FmtStr
例子 Edit1.Text := Format(Edit2.Text, [StrToFloatDef(Edit.3.Text, 0)]);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论