有没有办法让vfp中数值转字符型时后边的零自动去掉
比如说2.530转出来后是2.53
是的,你说得很有道理,100后的零都不能去的,要编个程序来完成:
建个xxx.prg程序:
代码如下:
PARAMETERS a
a=ALLTRIM(STR(a,20,5)) &&得到一个长20,5位小数的字符串
DO while RAT('0',a)=LEN(a) &&如果0在最后一位,执行循环
a=LEFT(a,LEN(a)-1) &&去掉后面的0
IF RAT('.',a)=LEN(a) &&如果最后一位是小数点了,就去掉小数点,退出循环
a=LEFT(a,LEN(a)-1)
EXIT
ENDIF
ENDDO
RETURN a
ENDFUNC
在命令窗口中执行:
a=2.5
?xxx(a) &&得到2.5
a=100
?xxx(a) &&得到100
a=100.03
?xxx(a) &&得到100.03
RAT()函数:返回一个字符表达式或备注字段在另一个字符表达式或备注字段内第一次出现的位置,从最右边的字符算起。
AT()函数:返回一个字符表达式或备注字段在另一个字符表达或备注字段中首次出现的位置,从最左边开始计数