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 如何从项目中获取文本文件的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)