一、数组函数
1、LowerBound()
功 能:得到指定数组第n维的下界。
语 法:LowerBound ( array {, n } )
参 数:array:数组名。
n:数值类型,可选项,指定要得到数组哪一维的下界。缺省值为1。
返回值:Long。函数执行成功时返回array数组第n维的下界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,LowerBound()函数返回NULL。
示 例:integer a[5], b[2,5]
LowerBound(a) // Returns 1
LowerBound(a, 1) // Returns 1
LowerBound(a, 2) // Returns -1, a has only 1 dim
LowerBound(b, 2) // Returns 1
integer c[ ] c++string类型
LowerBound(c) // Returns 1
c[50] = 900
LowerBound(c) // Returns 1
integer d[-10 to 50]
LowerBound(d) // Returns - 10
2、UpperBound()
功 能:得到指定数组第n维的上界。
语 法:UpperBound( array {, n } )
参 数:array:数组名。
n:数值类型,可选项,指定要得到数组哪一维的上界。缺省值为1。
返回值:Long。函数执行成功时返回array数组第n维的上界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,UpperBound()函数返回NULL。
示 例:integer a[5], b[2,5]
LowerBound(a) // Returns 1
LowerBound(a, 1) // Returns 1
LowerBound(a, 2) // Returns -1, a has only 1 dim
LowerBound(b, 2) // Returns 1
integer c[ ]
LowerBound(c) // Returns 1
c[50] = 900
LowerBound(c) // Returns 1
integer d[-10 to 50]
LowerBound(d) // Returns - 10
二、Blob(大二进制对象)函数
Blob函数得到Blob数据类型的信息、完成数据类型转换以及操作Blob类型数据。
1、Blob()
功 能:将字符串转换成Blob类型数据。
语 法:Blob ( text )
参 数:text: string类型,指定要转换的数据。
返回值:Blob。函数执行成功时返回转换后的Blob类型数据;如果text参数的值为NULL,则Blob()函数返回NULL。
示 例:Blob B
B = Blob(“北京”)
2、BlobEdit()
功 能:将任意类型的数据插入到Blob类型变量的指定位置。
语 法:BlobEdit ( blobvariable, n, data )
参 数:blobvariable:Blob类型的已初始化变量,将向该变量中插入数据。
n:指定插入位置,有效值在1到4,294,967,295之间。
data:要插入到Blob类型变量中的数据,其数据类型可以是任何有效的PowerBuilder数据类型。
返回值:Unsigned long。函数执行成功时返回下次可以插入数据的位置;如果blobvariable变量中空间不够或任何参数的值为NULL,则BlobEdit()函数返回NULL。
示 例:下面的代码把一幅位图的数据复制到Blob类型变量emp_photo的起始位置,并把下次数据复制位置保存到变量nbr中,之后将当天的日期复制到emp_photo变量中位图数据的后面。
blob{1000} emp_photo
blob temp
date pic_date
ulong nbr
... // Read BMP file containing employee picture
... // into temp using FileOpen and FileRead.
pic_date = Today()
nbr = BlobEdit(emp_photo, 1, temp)
BlobEdit(emp_photo, nbr, pic_date)
UPDATEBLOB Employee
SET pic = :emp_photo
WHERE ...
3、BlobMid()
功 能:从Blob变量中提取出一段数据。提取之后,原Blob变量内容不变。
语 法:BlobMid ( data, n {, length } )
参 数:data:Blob类型的数据。
n:指定要提取数据的起始位置,有效值在1到4,294,967,295之间。
length:可选项,指定要提取数据的长度,以字节为单位,有效值在1到4,294,967,295之间。缺省时提取从指定位置n到末尾的所有数据
返回值:Blob。函数执行成功时返回指定字节数的数据。如果n的值大于data的字节数,函数返回空。如果n与length的和超过了data数据的字节数,那么BlobMid()函数返回剩下的数据,数据长度将小于参数length的值。如果任何参数的值为NULL,则 BlobMid()函数返回NULL。
示 例:In this example, the first call to BlobMid stores 10 bytes of the blob datablob starting at position 5 in the blob data_1; the second call stores the bytes of datablob from position 5 to the end in data_2:
blob data_1, data_2, datablob
... // Read a blob datatype into datablob.
data_1 = BlobMid(datablob, 5, 10)
data_2 = BlobMid(datablob, 5)
This code copies a bitmap in the blob emp_photo starting at position 1, stores the position at which the next copy can begin in nbr, and then copies a date into the blob emp_photo after the bitmap data. Then, using the date 's start position, it extracts the date from the blob and displays it in the StaticText st_1:
blob{1000} emp_photo
blob temp
date pic_date
ulong nbr
... // Read BMP file containing employee picture
... // into temp using FileOpen and FileRead.
pic_date = Today()
nbr = BlobEdit(emp_photo, 1, temp)
BlobEdit(emp_photo, nbr, pic_date)
st_1.Text = String(Date(BlobMid(emp_photo, nbr)))
4、Len()
功 能:得到Blob类型变量的数据长度,以字节为单位。
语 法:Len ( blob )
参 数:blob:Blob类型变量。
返回值:Long。函数执行成功时返回blob变量的长度,发生错误时返回-1。如果任何参数的值为NULL,则Len()函数返回NULL。
用 法:如果在说明Blob类型的变量时指定了变量长度,那么对该变量来说,Len()函数得到的就是这个指定的长度。如果在变量说明时未指定变量长度,那么PowerBuilder在赋值时调整长度,未赋值Blob类型变量的长度为0。
示 例:This statement returns 0:
Len( " ")
These statements store in the variable s_address_len the length of the text in the SingleLineEdit sle_address:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论