vfp如何读取txt文件到dbf表中
现有文本文件0122012200.txt文件,如何读取到dbf表中,请高手指点,不胜感激。
2020-04-20 15:47
[此贴子已经被作者于2020-4-20 15:54编辑过]
2020-04-20 15:52
2020-04-20 16:04
程序代码:CLOSE DATABASES
cCurrentProcedure = SYS(16,1)
nPathStart = AT(":",cCurrentProcedure)- 1
nLenOfPath = RAT("\", cCurrentProcedure) - (nPathStart)
mypath=SUBSTR(cCurrentProcedure, nPathStart, nLenofPath)
SET Default TO (mypath)
cstr=FILETOSTR("0122012200.txt")
CREATE CURSOR gkcj (考生号 c(14),姓名 c(10),报名区县 c(10),报名点 c(20),总分 n(3),语文 n(3),数学 n(3),外语 n(3),综合 n(3))
* 以下内容,是我自己的逻辑.
DIMENSION cj[1,9]
LOCAL isEnd as Boolean
=ALINES(axx,cstr,CHR(13)+CHR(10))
cj = ""
istart =1
DO WHILE isEnd =.f.
ino = ASCAN(axx,"2014年重庆市全国普通高考成绩通知单",istart)
IF ino>0 THEN
istart = ino + 13
IF istart > ALEN(axx) THEN
isEnd = .t.
ENDIF
cj[1,1]=LEFT(axx[ino + 6],14) && 考生号
cj[1,2]=SUBSTR(axx[ino + 6],16) && 姓名
cj[1,3]=SUBSTR(axx[ino + 4],11) && 报名区县
cj[1,4]=SUBSTR(axx[ino + 8],11) && 报名点
=ALINES(axxZf, STRTRAN(axx[ino +12],":","") ,space(1))
irow2 = 5
FOR irow = 1 TO ALEN(axxZf)
IF ISDIGIT(LEFTC(axxZf[irow],1)) THEN
cj[1,irow2]=axxZf[irow] && 总分 ,语文 ,数学 ,外语,综合
irow2 = irow2 + 1
ENDIF
ENDFOR
RELEASE axxZf
INSERT INTO gkcj FROM ARRAY cj
cj = ""
ENDIF
ENDDO
2020-04-20 17:34
2020-04-20 17:34
2020-04-20 19:03
2020-04-21 07:09
2020-04-21 09:09
2020-04-21 09:16
[此贴子已经被作者于2020-4-21 11:41编辑过]
2020-04-21 11:01