VB6删除随机文件中的当前记录

目的:删除随机文件中的当前记录(intRec变量值为当前记录号)思路:将当前文件,当前记录之前和之后的记录写到临时文件中,再用临时文件覆盖当前文件,最后删除临时文件说明:... 目的:删除随机文件中的当前记录(intRec变量值为当前记录号)
思路:将当前文件,当前记录之前和之后的记录写到临时文件中,再用临时文件覆盖当前文件,最后删除临时文件
说明:当前文件为#1号,xxsx.dat已打开,~ xxsx.dat为临时文件(#2号),Stu已定义 (其中包括定义每个字段长度)
用到的变量:Reclen:一条记录长度;intLast:当前文件中记录总数
程序:
Open "~xsxx.dat" For Random As #2 Len = Reclen ‘建立并打开临时文件
Dim i As Integer
For i = 1 To intRec - 1
Get #1, i, Stu
Put #2, i, Stu
Next
For i = intRec + 1 To intLast
Get #1, i, Stu
Put #2, i - 1, Stu
Next
Close
FileCopy "~xsxx.dat", "xsxx.dat" ‘用临时文件覆盖原文件
Kill "~xsxx.dat" ‘删除临时文件
End Sub
运行结果:当前记录到到尾记录的一段记录同时被删除
请问,为什么不是只删除一条记录
展开
 我来答
尘入蜓孟影食1038
2011-09-23 · TA获得超过3513个赞
知道大有可为答主
回答量:2307
采纳率:87%
帮助的人:1366万
展开全部
因为你没有给出全部代码,只能猜测。
估计是你没有给intLast赋值,或者是给intLast赋值不正确(小于intRec + 1)而导致第二个for循环没有被执行。
具体的你可以在第二个for的地方设置断点检测看看是不是进入了循环。
更多追问追答
追问
intLast有值,我提供的是一个模块,这个值我用立即窗口检查是对的
追答
是否进入第二个循环?或者你贴出全部代码及例数据库。没有人是神仙,可以猜测到你为贴出来的代码
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式