<pre name="code" class="sql">perl unpack()函数例子,unpack()函数实例代码 - 解压缩的二进制字符串STRING 使用模板TEMPLATE 中指定的格式字符串。
语法
unpack TEMPLATE, STRING
定义和用法
解压缩的二进制字符串STRING 使用模板TEMPLATE 中指定的格式字符串。基本上包反转操作,返回到所提供的格式,所述填充值的列表。
您也可以任何格式的字段的前缀%<数字>表示你想要一个16位的校验和值的字符串,而不是值。
返回值
解压后的值列表
下面是表,它给出在TEMPLATE要使用的值。
Character Description
a ASCII character string padded with null characters
A ASCII character string padded with spaces
b String of bits, lowest first
B String of bits, highest first
c A signed character (range usually -128 to 127)
C An unsigned character (usually 8 bits)
d A double-precision floating-point number
f A single-precision floating-point number
h Hexadecimal string, lowest digit first
H Hexadecimal string, highest digit first
i A signed integer
I An unsigned integer
l A signed long integer
L An unsigned long integer
n A short integer in network order
N A long integer in network order
p A pointer to a string
s A signed short integer
S An unsigned short integer
u Convert to uuencode format
v A short integer in VAX (little-endian) order
V A long integer in VAX order
x A null byte
X Indicates "go back one byte"
@ Fill with nulls (ASCII 0)
unpack:
unpack TEMPLATE,EXPR
TEMPLATE 要使用的值
a ASCII 字符窜用null字符窜填充
A 用空格填充
[oracle@jhoa dbi]$ cat a4.pl
(my $a,my $b,my $c) = unpack("a3 a5 a7", "ab:cdef:::8888ghij");
print "$a,$b,$c
";
[oracle@jhoa dbi]$ perl a4.pl
ab:,cdef:,::8888g