第五十九章 Caché 函数大全 $SCONVERT 函数
函数 大全 Cach
2023-09-11 14:15:37 时间
第五十九章 Caché 函数大全 $SCONVERT 函数
将二进制编码值转换为数字。
大纲
$SCONVERT(s,format,endian,position)
$SC(s,format,endian,position)
参数
- s 一串8位字节,编码为一个数字。有效值的限制取决于所选的格式。
- format 以下格式代码之一,指定为带引号的字符串:S1,S2,S4,S8,U1,U2,U4,F4或F8。
- endian 可选—布尔值,其中0 =小端,而1 =大端。默认值为0。
- position 可选-开始转换的8位字节字符串中的字符位置。字符位置从1开始计算。默认值为1。如果指定位置,则必须指定endian或占位符逗号。
描述
$SCONVERT
使用指定的格式将s从8位字节的编码字符串转换为数值。
以下是受支持的格式代码:
- S1 有符号整数,编码为一个8位字节的字符串。该值必须在-128到127(含)范围内。
- S2 有符号整数,编码为两个8位字节的字符串。该值必须在-32768到32767(包括)之间。
- S4 有符号整数,编码为四个8位字节的字符串。该值必须在-2147483648到2147483647之间(含)。
- S8 带符号的整数,编码为八个8位字节的字符串。该值必须在-9223372036854775808到9223372036854775807(含)之间。
- U1 无符号整数编码为一个8位字节的字符串。最大值为256。
- U2 无符号整数编码为两个8位字节的字符串。最大值为65535。
- U4 无符号整数编码为四个8位字节的字符串。最大值是4294967295。
- F4 IEEE浮点数编码为四个8位字节的字符串。
- F8 IEEE浮点数编码为八个8位字节的字符串。
字符串s必须包含从指定字符位置开始和之后的足够字符,以满足格式代码所需的8位字节数。例如,$SCONVERT(s,"S4",0,9)
要求s的长度至少为12个字符,因为解码结果来自字符位置9、10、11和12。超出此范围的值将导致<VALUE OUT OF RANGE>
错误。
$SCONVERT
仅适用于8位字节字符串。如果$SCONVERT
在Caché的Unicode实例上,并且编码字符串中的任何字符在$CHAR(256)
到$CHAR(65536)
范围内,则返回值是不可预测的。
如果参数s是数字值,则在解码之前将其转换为包含规范数字形式的字符串。
可以使用IsBigEndian()
类方法来确定在操作系统平台上使用的位顺序:1 = big-endian位顺序; 0 =小端位顺序。
DHC-APP>WRITE $SYSTEM.Version.IsBigEndian()
0
$SCONVERT
提供$NCONVERT
运算的逆函数。
示例
在下面的示例中,$SCONVERT
将两字节的二进制编码值转换为数字:
/// d ##class(PHA.TEST.Function).SCONVERT()
ClassMethod SCONVERT()
{
SET x=$NCONVERT(258,"U2")
ZZDUMP x
SET y=$SCONVERT(x,"U2")
WRITE !,y
}
0000: 02 01 为258的十六进制102
DHC-APP>d ##class(PHA.TEST.Function).SCONVERT()
0000: 02 01 ..
258
下面的示例$SCONVERT
将大字节序的两字节二进制编码值转换为数字:
/// d ##class(PHA.TEST.Function).SCONVERT1()
ClassMethod SCONVERT1()
{
SET x=$NCONVERT(258,"U2",1)
ZZDUMP x
SET y=$SCONVERT(x,"U2",1)
WRITE !,y
}
DHC-APP>d ##class(PHA.TEST.Function).SCONVERT1()
0000: 01 02 ..
258
相关文章
- Jquery或Js中的字符串操作函数大全(搜集中)
- 第124章 Caché 函数大全 $ZZENKAKU 函数
- 第120章 Caché 函数大全 $ZWCHAR 函数
- 第118章 Caché 函数大全 $ZVERSION(1) 函数
- 第117章 Caché 函数大全 $ZSTRIP 函数
- 第九十九章 Caché 函数大全 $ZCONVERT 函数
- 第九十一章 Caché 函数大全 $ZPOWER 函数
- 第九十章 Caché 函数大全 $ZLOG 函数
- 第八十六章 Caché 函数大全 $ZDATETIMEH 函数
- 第八十一章 Caché 函数大全 $ZCOT 函数
- 第八十章 Caché 函数大全 $ZCOS 函数
- 第七十五章 Caché 函数大全 $XECUTE 函数
- 第七十二章 Caché 函数大全 $WISWIDE 函数
- 第六十七章 Caché 函数大全 $VIEW 函数
- 第六十四章 Caché 函数大全 $STACK 函数
- 第六十二章 Caché 函数大全 $SORTBEGIN 函数
- 第六十章 Caché 函数大全 $SELECT 函数
- 第五十四章 Caché 函数大全 $QSUBSCRIPT 函数
- 第五十章 Caché 函数大全 $PREFETCHOFF 函数
- 第四十八章 Caché 函数大全 $PARAMETER 函数
- 第四十五章 Caché 函数大全 $NOW 函数
- 第四十二章 Caché 函数大全 $NCONVERT 函数
- 第二十五章 Caché 函数大全 $LENGTH 函数
- 第二十一章 Caché 函数大全 $ISOBJECT 函数
- 第十四章 Caché 函数大全 $EXTRACT 函数
- 第六章 Caché 函数大全 $CASE 函数
- Excel 函数大全之 SLOPE function 返回线性回归线的斜率