注册 登录
编程论坛 VFP论坛

导入文件出错

sarge_xp 发布于 2021-06-25 09:11, 1080 次点击
学生的体温文件放在c:\class中,有多个,统一为CSV格式,用adir()把它们的信息存在数组,将指定的文件导入到新的表中出错!以下是代码:


SET DEFAULT TO C:\class

GNDBCNUMBER = ADIR(GADATABASE, '*.csv')  && 创建一个数组
? GNDBCNUMBER

? GADATABASE(2,1)
M_FILE=ALLTRIM(GADATABASE(2,1))
? M_FILE

CLOSE DATABASES

OEXCEL = CREATEOBJECT("EXCEL.APPLICATION")
WITH OEXCEL
    .WORKBOOKS.OPEN(M_FILE)                    &&出错的地方
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录

    .DISPLAYALERTS = .F.
    .ACTIVEWORKBOOK.SAVEAS(SYS(5) + SYS(2003) + "\0326.TXT", -4158)  && 保存为以制表符分隔的文本文件
    .ACTIVEWORKBOOK.CLOSE
    .DISPLAYALERTS = .T.
    .QUIT
ENDWITH
RELEASE OEXCEL
CREATE CURSOR slot_1 (学号 C(10),性别 C(10),体温 N(6,2),日期 d)                &&导入学生体温数据
APPEND FROM 0326.TXT DELIMITED WITH TAB
ERASE 0326.TXT                                                                &&引入资料
3 回复
#2
sych2021-06-25 09:44
这个命令是需要文件的完整路径
#3
sych2021-06-25 09:45
OEXCEL = CREATEOBJECT("EXCEL.APPLICATION")
WITH OEXCEL
    .WORKBOOKS.OPEN("C:\class\"+M_FILE)  

这样修改
#4
厨师王德榜2021-06-25 17:37
不理解为什么不直接导入,要通过oExcel去转换一次?这样影响效率。
在表头对应的情况下,csv格式可以像这样直接导入:
APPEND FROM 'C:\名单.csv' CSV
1