点击或拖拽改变大小

Functions.Transform 方法 (__Date, String)

X#
将任何值转换为格式化字符串。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION Transform(
	uValue AS DATE,
	cSayPicture AS STRING
) AS STRING
查看代码

参数

uValue
类型:__Date
要格式化的值。
此表达式可以是任何有效的X#数据类型,除了数组、代码块、对象和NIL。
cSayPicture
类型:String
描述返回字符串格式的图片和模板字符串。

返回值

类型:String
cSayPicture定义的格式化字符串。
备注
Transform()是一个转换函数,根据指定的图片字符串(包括图片函数和模板字符串的组合)格式化字符、日期、逻辑和数值。Transform()以与@...SAY命令的PICTURE子句相同的方式格式化数据以输出到屏幕或打印机。
要将转换后的字符串转回其原始值,请使用Unformat()。 函数字符串:
图片函数字符串指定适用于整个Transform()返回值的格式化规则,而不是uValue中特定字符位置的规则。
函数字符串由@字符开始,后跟一个或多个附加字符,每个字符都有特定含义(见下表)。
如果存在函数字符串,@字符必须是图片字符串的最左侧字符,且函数字符串不得包含空格。
函数字符串可以单独指定,也可以与模板字符串一起指定。
如果两者都存在,函数字符串必须在模板字符串之前,两者必须用单个空格分隔。 函数 动作 B 左对齐显示数字 C 在正数后显示CR D 以SET DATE格式显示日期 E 以英国格式显示日期 R 插入非模板字符 X 在负数后显示DB Z 将零显示为空格 ( 将负数括在括号中 ! 将字母字符转换为大写 模板字符串:
图片模板字符串在字符基础上指定格式化规则。
模板字符串由一系列字符组成,其中一些具有特殊含义(见下表)。
模板字符串中的每个位置对应uValue参数值中的一个位置。由于Transform()使用模板,它可以插入格式化字符,如逗号、美元符号和括号。 模板字符串中没有指定含义的字符会被逐字复制到返回值中。
如果使用@R图片函数,这些字符会插入到返回值的字符之间;否则,它们会覆盖返回值中相应的字符。
模板字符串可以单独指定,也可以与函数字符串一起指定。
如果两者都存在,函数字符串必须在模板字符串之前,两者必须用单个空格分隔。 模板 动作 A,N,X,9,# 显示任何数据类型的数字 L 将逻辑值显示为"T"或"F" Y 将逻辑值显示为"Y"或"N" ! 将字母字符转换为大写 $ 在数字的前导空格位置显示美元符号 * 在数字的前导空格位置显示星号 . 指定小数点位置 , 指定逗号位置
示例
此示例使用模板将数字格式化为货币格式:
X#
1? Transform(123456, "$999,999")    // 结果: $123,456
此示例使用函数格式化字符串:
X#
1? Transform("to upper", "@!")        // 结果: TO UPPER
参见