vf中的STR函数使用方法和规律

vf中的STR函数使用方法和规律,第1张

str(n,n)函数是将数值型转换为字符型,下面举例说明用法:

a=12345

b=str(a,6)

c=str(a,8)

d=str(a,5)

首先看b的值,b的数字为6刚好和a的长度相等,因此其值为

"12345"完美转换;其次看c的值,由于数字8大于数字a的数字长度,多余的用空格填充,

c="12345

",与b相比多了两个空格。

再看d,由于数字小于6,转换后多余的部分将会被舍弃,

d=“1234”

一般在使用该函数时可以将数字取默认值10,即不加数字参数,然后在外面在使用函数去空格函数alltrim

如alltrim(str(a))

在数据库应用的 *** 作过程中,用户需要了解数据对象的类型、状态等属性,Visual FoxPro提供了相关的测试函数,使用户能够准确地获取 *** 作对象的相关属性。

1.数据类型函数TYPE( )

格式TYPE(<cExp >)

功能返回cExp 串表示的数据对象的数据类型,返回值是一个表示数据类型的大写字母。C:字符型,D:日期型,N:数值型,L:逻辑型,M:备注型,G:通用型,U:未定义。

2.文件查找函数FILE()

格式FILE(<cExp>)

功能根据cExp串中指定路径查找文件,如未指定路径,则在默认目录中查找。文件存在,返回逻辑真(T) 值,否则为逻辑假(F)值。

3.条件测试函数IIF( )

格式IIF(<lExp >,<eExp 1>,<eExp2>)

功能逻辑表达式lExp值为真(T),返回表达式eExp1的值,否则返回表达式eExp2的值。eExp1和eExp2可以是任意数据类型的表达式。

4.表结束标志测试函数EOF( )

格式EOF([<工作区号> | <别名>])

功能测试记录指针是否移到表结束处。如果记录指针指向表中尾记录之后,函数返回真(T),否则为假(F)。

5.表起始标识测试函数BOF ( )

格式BOF ([<工作区号> | <别名>])

功能测试记录指针是否移到表起始处。如果记录指针指向表中首记录前面,函数返回真(T),否则为假(F)。工作区说明见EOF()函数。

6.当前记录号函数RECNO()

格式RECNO([<工作区号> | <别名>])

功能返回指定工作区中表的当前记录的记录号。对于空表返回值为1。

7.当前记录逻辑删除标志测试函数DELETED( )

格式DELETED([<工作区号> | <别名>])

功能测试指定工作区中表的当前记录是否被逻辑删除。如果当前记有逻辑删除标记,函数返回真(T),否则为假(F)。

8.记录数函数RECCOUNT( )

格式RECCOUNT ([<工作区号> | <别名>])

功能返回指定工作区中表的记录个数。如果工作区中没有打开表则返回0。

9.记录大小测试函数RECSIZE( )

格式RECSIZE( [<工作区号> | <别名>] )

功能返回指定工作区中表的记录总长度。如果工作区中没有打开表则返回0。

10.屏幕列坐标和行坐标函数 COL( )、ROW( )

格式COL ( )

ROW()

功能COL ( )返回光标的列坐标值,ROW ( )返回光标的行坐标值。

11.打印机列坐标和行坐标函数PCOL( ),PROW( )

格式PCOL( )

PROW()

功能返回打印机打印头所处位置的列坐标和行坐标。

(1)先打开VF,(2)打开命令窗口(3)create project 文件名(4)modify project 文件名(4)单右即可执行添加的命令(里边有详细的 *** 作说明)

VF中的工作区是为了能实现多表同时 *** 作的,一共有32767个工作区,每个工作区可以打开一个表,也就是说最多可以同时打开32767个表,在同一个工作区如果有已经打开的表再打开一个新表,那么原来的表会自动关闭。用select 工作区号 命令来选择工作区。

假定学生表名xs,出生日期字段为cs

1、 sele from xs where cs={^1988-6-21}

2、 use xs

set filt to cs={^1988-6-21}

brow

3、 use xs

loca for cs={^1988-6-21}

brow

continue

4、 vfp工具栏-表-筛选选项

5、假定已经按cs做了索引

use xs index 索引名

seek {^1988-6-21}

6、

select 字段列表 from 成绩表 where 课程1<60 or 课程2<60 or 课程3<60 (可以继续添加);

into table cx

use cx

brows

学生dbf

成绩dbf

select 学生姓名,成绩 from 成绩;

inner join alltrim(学生学号)==alltrim(成绩学号);

where 课程1<60 or 课程2<60 or 课程3<60 (可以继续添加);

into table cx

cx这个表内就包含了姓名学号某门课程成绩不及格的记录

prg

use 成绩表

clear

accept "请输入课程名" to a

zd=""

lflage=f

i=1

do while i<=fcount()

if field(i)==alltrim(a)

zd=field(i)

exit

endif

if i=fcount()

messagebox("课程名不存在!","系统提示")

lflage=t

EXIT

endif

i=i+1

enddo

if not lflage

DISPLAY 姓名,&zd for &zd<60

endif

对应课程不及格学生和相应课程成绩查询

use 成绩表

go top

s=""

do while !eof()

for i=2 to fcount() &&第二个字段开始为成绩字段

s=field(i)

if i=2

姓名字段

endif

if &s<60

s

endif

endfor

skip

enddo

大概是这样的

没有试过程序

以上就是关于vf中的STR函数使用方法和规律全部的内容,包括:vf中的STR函数使用方法和规律、请教VF有哪些测试类函数、foxpro 如何从项目中获取文本文件的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9592268.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存