主题:vf中FILE()函数的应用问题
pyzzzzx
[专家分:0] 发布于 2009-12-14 14:52:00
有一个表单文件,上面有二个按钮,一个确定,一个关闭,有一个SFGL.DBF文件,我想在每次按关闭按钮时,能在不同文件夹中备份一个文件,也就是每按一次关闭按钮会备份一个SFGL.DBF文件,或在相同文件夹中备份不同文件名的SFGL.DBF文件,如何编写代码?谢谢!!
FYYYLYL专家:
用ttoc(datetime())作为文件名或文件夹名,还是不能解决存为不同文件的问题。因为在备份时提示是或否,点是就覆盖,点否就不能备份,如何解决,请高手写出详细代码。谢谢!!
fyyylyl专家:
我在表单“确定”按钮的CLICK事件中编写了代码:
set safe off
COPY TO E:\sjbf\ttoc(datetime()).DBF
每按一次“确定”按钮,就是会覆盖前一个文件的啊?如何达到不覆盖呢?请专家明示!谢谢!!
补充:也就是说,如何达到每按一次“确定”按钮,不覆盖前一个文件,而生成一个新的文件呢?也就是说,如果按十次“确定”按钮,就会备份十个不同文件名的文件。本人愚趸,请专家详细说明!!
FYYYLYL专家:
使用COPY TO ("E:\sjbf\"+chrtran(ttoc(datetime())," .:",""),显示“无效的路径或文件名”的错误提示,其实不用去掉"., ",我想问题的关键不在这里,但我又想不出,如何修改?请告知,谢谢!!
最后更新于:2009-12-21 10:50:00
回复列表 (共11个回复)
沙发
fyyylyl [专家分:8550] 发布于 2009-12-14 16:05:00
可以ttoc(datetime())作为文件名或文件夹名。
板凳
sywzs [专家分:5650] 发布于 2009-12-15 05:12:00
用 PUTFILE() 函数得到一个要保存的文件路径并给文件起名。
3 楼
ihorse [专家分:970] 发布于 2009-12-15 18:07:00
1楼方法可行,这样每次备份的文件就不会是相同的。
4 楼
pyzzzzx [专家分:0] 发布于 2009-12-18 15:52:00
FYYYLYL专家:
用ttoc(datetime())作为文件名或文件夹名,还是不能解决存为不同文件的问题。因为在备份时提示是或否,点是就覆盖,点否就不能备份,如何解决,请高手写出详细代码。谢谢!!
5 楼
sywzs [专家分:5650] 发布于 2009-12-19 05:46:00
cNAME= PUTFILE("","SFGL.dbf","*.DBF")
COPY TO &cNAME
6 楼
fyyylyl [专家分:8550] 发布于 2009-12-19 08:50:00
ttoc(datetime())两次生成间隔精确到了“秒”,理论上讲除非在同一秒钟内备份两次,否则不会重名。
“点是就覆盖,点否就不能备份”----set safe off
7 楼
pyzzzzx [专家分:0] 发布于 2009-12-20 20:13:00
fyyylyl专家:
我在表单“确定”按钮的CLICK事件中编写了代码:
set safe off
COPY TO E:\sjbf\ttoc(datetime()).DBF
每按一次“确定”按钮,就是会覆盖前一个文件的啊?如何达到不覆盖呢?请专家明示!谢谢!!
补充:也就是说,如何达到每按一次“确定”按钮,不覆盖前一个文件,而生成一个新的文件呢?也就是说,如果按十次“确定”按钮,就会备份十个不同文件名的文件。本人愚趸,请专家详细说明!!
8 楼
fyyylyl [专家分:8550] 发布于 2009-12-21 09:54:00
COPY TO ("E:\sjbf\"+chrtran(ttoc(datetime())," .:",""))
----使用chrtran()函数将变量中不符合文件命名规则的“.”、“:”及空格去去掉
9 楼
pyzzzzx [专家分:0] 发布于 2009-12-21 22:12:00
FYYYLYL专家:
使用COPY TO ("E:\sjbf\"+chrtran(ttoc(datetime())," .:",""),显示“无效的路径或文件名”的错误提示,其实不用去掉"., ",我想问题的关键不在这里,但我又想不出,如何修改?请告知,谢谢!!
10 楼
fyyylyl [专家分:8550] 发布于 2009-12-22 10:23:00
“E:\sjbf”文件夹是否已经存在?如不存在,需先建立(可先用directory( )判断,若不存在,用MD命令建立)。
因与磁盘盘符、文件扩展名冲突,文件名中的“:”、“.”必须去掉。
我来回复