最新版VFP常用函数大全.docx
《最新版VFP常用函数大全.docx》由会员分享,可在线阅读,更多相关《最新版VFP常用函数大全.docx(8页珍藏版)》请在冰点文库上搜索。
最新版VFP常用函数大全
VFP常用函数大全
VFP常用函数大全
一.字符及字符串处理函数:
字符及字符串处理函数的处理对象均为字符型数据,但其返回值类型各异.
1.取子串函数:
格式:
substr(c,n1,n2)
功能:
取字符串C第n1个字符起的n2个字符.返回值类型是字符型.例:
取姓名字符串中的姓.
store"王小风"toxm?
substr(xm,1,2)结果为:
王
2.删除空格函数:
以下3个函数可以删除字符串中的多余空格,3个函数的返回值均为字符型.
trim(字符串):
删除字符串的尾部空格alltrim(字符串):
删除字符串的前后空格
ltrim(字符串):
删除字符串的前面的空格例:
去掉第一个字符串的尾空格后与第二个字符串连接
store"abcd"toxstore"efg"toy?
trim(x)+y
abcdefg3.空格函数:
格式:
space(n)
说明:
该函数的功能是产生指定个数的空格字符串(n用于指定空格个数).
例:
定义一个变量dh,其初值为8个空格storespace(8)todh4.取左子串函数:
格式:
left(c,n)功能:
取字符串C左边n个字符.5.取右子串函数:
格式:
right(c,n)功能:
取字符串c右边的n个字符例:
a="我是中国人"
?
right(a,4)国人?
left(a,2)我
6.empty(c):
用于测试字符串C是否为空格.7.求子串位置函数:
格式:
At(字符串1,字符串2)功能:
返回字符串1在字符串2的位置
例:
?
At("教授","副教授")28.大小写转换函数:
格式:
lower(字符串)
upper(字符串)
功能:
lower()将字符串中的字母一律变小写;upper()将字符串中的字母一律变大写例:
bl="FoxBASE"?
lower(bl)+space
(2)+upper(bl)foxbase
FOXBASE9.求字符串长度函数:
格式:
len(字符串)功能:
求指定字符串的长度
例:
a="中国人"?
len(a)6二.数学运算函数:
1.取整函数:
格式:
int(数值)功能:
取指定数值的整数部分.例:
取整并显示结果?
int(25.69)
252.四舍五入函数:
格式:
round(数值表达式,小数位数)
功能:
根据给出的四舍五入小数位数,对数值表达式的计算结果做四舍五入处理
例:
对下面给出的数四舍五入并显示其结果
?
round(3.14159,4),round(2048.9962,0),round(2048.9962,-3)
3.1416204920003.求平方根函数:
格式:
sqrt(数值)
功能:
求指定数值的算术平方根例:
?
sqrt(100)104.最大值、最小值函数:
格式:
Max(数值表达式1,数值表达式2)Min(数值表达式1,数值表达式2)
功能:
返回两个数值表达式中的最大值和最小值例:
x1=123.456x2=234.567
?
max(x1,x2)234.567?
min(x1,x2)123.4565.求余数函数:
格式:
mod(表达式1,表达式2)功能:
求表达式1对表达式2的余数例:
?
mod(10,3)
16.求指数、对数函数:
格式:
exp(数值表达式)log(数值表达式)功能:
(1).exp()计算自然数e为底,表达式的值为指数的幂
(2).log()计算表达式值的自然对数,返回lnx的值.例:
x=1y=exp(x)
?
exp(x),log(x)2.721三.转换函数:
1.数值转数字字符串函数:
格式:
str(n,n1,n2)功能:
将数值n转换为字符串,n1为总长度,n2为小数位
例:
?
str(321.56)322&&隐含四舍五入取整转换为字符型数据
?
str(321.56,6,2)321.562.字符转数值函数:
格式:
val(s)
功能:
将数字字符串s转换为数值例:
x="23"y="76"?
val(x)+val(y)100
3.字符转日期函数:
格式:
ctod(c)功能:
将日期字符串c转换为日期例:
setdate
ansi&&日期格式设为美国标准化协会格式?
ctod("^2021.11.14")
2021.11.144.日期转字符函数:
格式:
dtoc(d)功能:
将日期d转化为日期字符串
例:
将日期型数据转化为字符型日期数据并显示汉字日期.setcenturyon
&&开启世纪前缀,即日期中年份用4位表示setdateansi
rq={^2021.11.14}rq=dtoc(rq)
?
substr(rq,1,4)+"年"+substr(rq,6,2)+"月"+substr(rq,9,2)+"日"
2021年11月14日5.时间转字符函数:
格式:
ttoc(时间)功能:
将时间转为时间字符串
6.字符转时间函数:
格式:
ctot(c)功能:
将时间字符串转化为时间7.字符串替换函数:
格式:
stuff(<字符表达式1>,<起始位置>,<字符个数>,<字符表达式2>)
功能:
从指定位置开始,用<表达式2>的值去替换<表达式1>中指定个数字符.若<字符个数>为零,直接插入;若<表达式2>为空字符串,则删除<表达式1>中指定个数的字符.
例:
X="祝大家新年好!
"?
stuff(X,7,4,"春节")祝大家春节好
?
stuff(X,11,0,"春节")祝大家新年春节好?
stuff(x,7,4,"")
祝大家好8.字符转ASCⅡ码函数:
格式:
Asc(<字符表达式>)
功能:
把<字符表达式>左边第一个字符转成相应的ASCⅡ码值例:
x="Foxpro"
?
Asc(x),Asc(lower(x))701029.ASCⅡ码值转字符函数:
格式:
chr(数值表达式)功能:
把数值转成相应的ASCⅡ码字符,返回值为字符型
例:
?
chr(70)+chr(111)+chr(111+9)Fox
四.日期函数:
1.系统日期函数:
格式:
date()
功能:
给出系统的当前日期,返回值是日期型数据.
例:
显示系统日期?
date()11/14/05setdateansiset
centuryon?
date()2021.11.142.年、月、日函数:
格式1).year(日期表达式):
从日期表达式中返回一个由四位数字表示的年份.
(2).month(日期表达式):
从日期表达式中返回一个用数字表示的月份.
(3).day(日期表达式):
从日期表达式中返回一个用数字表示的日数.例:
测试系统日期
rq=date()?
year(rq),month(rq),day(rq)20211114
3.系统时间函数:
格式:
time()功能:
得到当前时间字符串例:
?
time()
20:
32:
264.系统日期时间函数:
格式:
datetime()功能:
得到当前日期时间
例:
?
datetime()2021.11.1408:
35:
12PM5.星期函数:
格式:
dow(日期表达式)cdow(日期表达式)
功能:
dow用数字表示星期,1表示星期日,7为星期六;cdow用英文表示星期例:
?
date()
2021.11.15?
dow(date()),cdow(date())3Tuesday
五.测试函数:
1.测试文件尾函数:
格式:
eof([n])说明:
(1).n指定被测工作区号,其范围为1~32767
(2).该函数用于测试指定工作区中的表的记录指针是否指向文件尾,是则返回真值;否则返回假值;省略可选项指当前工作区.
例:
测试文件记录指针是否指向文件尾use职工档案gobottom?
eof().F.
skip?
eof().T.2.测试文件头函数:
格式:
bof([n])说明:
(1).n指定被测工作区号,其范围为1~32767
(2).用于测试指定工作区中的表的记录指针是否指向文件头,是则返回真值;否则返回假值;省略可选项指当前工作区.
例:
测试记录指针是否指向文件头use职工档案gotop?
bof().f.skip-1
?
bof().t.3.测试当前记录号函数:
格式:
recno()功能:
得到当前的记录号例:
use职工档案?
recno()1skip?
recno()2
4.测试表文件记录数函数:
格式:
reccount()功能:
得到表的记录数
例:
测试"职工档案"表的记录数use职工档案?
reccount()55.测试表字段数函数:
格式:
fcount()功能:
得到当前的字段数例:
测试"职工档案"表共有多少个字段use
职工档案?
fcount()96.测试查找记录是否成功函数:
格式:
found()
功能:
测试find、seek和locate命令查找记录是否成功.如成功则返回真值,否则为假值.
例:
在"职工档案"表中查找"小刚"的文化程度use职工档案locatefor姓名="小刚"
?
found().t.display7.文件测试函数:
格式:
file(字符表达式)
功能:
测试字符表达式指定的文件是否存在例:
?
file("e:
\myvfp\职工档案.dbf"
.t.8.数据类型测试函数:
格式:
type(字符表达式)
功能:
测试表达式的数据类型,返回大写字母:
N(数值)、C(字符)、L(逻辑)、D(日期)、M(备注)
例:
x=1236y="hello"?
type("x"N?
type("y"C
9.测试工作区函数:
格式:
select()功能:
返回当前工作区的区号10.测试别名函数:
格式:
alias()功能:
测试当前工作区的别名例:
select1use职工档案
aliaszgdaselect2use工资情况?
alias()工资情况
&&打开表时,不指定别名,表名即为别名selectzgda&&通过别名选择工作区
?
select()111.表文件名函数:
格式:
dbf()功能:
返回当前工作区打开的表名
例:
use工资情况?
dbf()e:
\myvfp\工资情况
六.其它函数:
1.宏替换函数:
格式:
&变量名
说明:
vfp中只有宏替换函数没有括号.功能是返回指定字符型变量中所存放的字符串.
例:
为"工资情况"表中每个人加100元工资gz="工资"use工资情况replaceall
&gzwith&gz+1002.条件函数:
格式:
iif(表达式,表达式1,表达式2)
功能:
若表达式值为真,则返回表达式1的值;否则返回表达式2的值;函数返回值类型与表达式1或表达式2类型一致
a=3b=5?
iif(a>b,"高兴","开心")开心3.消息框函数:
格式:
messagebox(提示文本[,对话框类型[,对话框标题文本]])功能:
显示提示对话框
说明:
(1)对话框类型见表1:
对话框类型功能0仅"确定"按钮1"确定"和"取消"按钮
2"终止","重试"和"忽略"按钮3"是","否"和"取消"按钮4"是"和"否"按钮
5"重试"和"取消"按钮16stop图标32?
图标48!
图标64i图标0默认第1个按钮
256默认第2个按钮512默认第3个按钮
(2).返回值见表2:
返回值按钮1确定2取消
3终止4重试5忽略6是7否
例:
分析messagebox("您确实要退出系统吗?
",4+64,"提示信息")会弹出什么样的窗口.
分析:
回头观察此函数的格式,弹出的对话框中的提示文本是"您确实要退出系统吗",对话框标题是"提示信息",
函数中间有"4+64",其中4指定对话框中出现"是"和"否"两个按钮(见表1),64指定对话框中出现i图标(见表2)
ok,我们在命令窗口依次执行下列命令:
tui=messagebox("您确实要退出系统吗?
",4+64,"提示信息")
&&变量tui用于接收messagebox函数的返回值,弹出的窗口如图1?
tui
&&变量tui值取决于运行时用户点了哪个按钮,如果点了"是",返回6,如果点了"否",返回7,见表2
功能:
测试字符表达式指定的文件是否存在例:
?
file("e:
\myvfp\职工档案.dbf")
.t.8.数据类型测试函数:
格式:
type(字符表达式)
功能:
测试表达式的数据类型,返回大写字母:
N(数值)、C(字符)、L(逻辑)、D(日期)、M(备注)
例:
x=1236y="hello"?
type("x")N?
type("y")C
9.测试工作区函数:
格式:
select()功能:
返回当前工作区的区号10.测试别名函数:
格式:
alias()功能:
测试当前工作区的别名例:
select1use职工档案
aliaszgdaselect2use工资情况?
alias()工资情况
&&打开表时,不指定别名,表名即为别名selectzgda&&通过别名选择工作区
?
select()111.表文件名函数:
格式:
dbf()功能:
返回当前工作区打开的表名
例:
use工资情况?
dbf()e:
\myvfp\工资情况
?
在下一行显示表达式串
?
?
在当前行显示表达式串
@...将数据按用户设定的格式显示在屏幕上或在打印机上打印
ACCEPT把一个字符串赋给内存变量
APPEND给数据库文件追加记录
APPENDFROM从其它库文件将记录添加到数据库文件中
AVERAGE计算数值表达式的算术平均值
PACK彻底删除加有删除标记的记录
ZAP删除当前数据库文件的所有记录(不可恢复)