VB对于顺序文件中,删除记录的语句是什么?删除后,对文件有什么影响?
答案:1 悬赏:30 手机版
解决时间 2021-03-08 20:26
- 提问者网友:我没有何以琛的痴心不悔
- 2021-03-07 19:57
VB对于顺序文件中,删除记录的语句是什么?删除后,对文件有什么影响?
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-03-07 20:52
从一个文件 A 中读出 300 个记录到 B 中,很容易。
但是,如果你熟悉文件在磁盘中存储的方式,就知道,“在 A 中把已经读出的记录删除”很麻烦。
实际上,删除部分文本文件内容,无论它们是连续的还是离散的,实际上都是要删除原来的文件,保存新文件。这样必然涉及大量的磁盘操作,速度很慢。
所以,请你换一个思路。如果是顺序地读,维护一个指针就可以了,下一次从新的指针处读起;如果是随机地读(必须是定长记录,用随机方式打开),需要将已读记录的字段清空。但实际上记录仍然存在。
要从物理上删除记录,实际上需要重建文件。下面是 MSDN 的有关说明:
删除记录
通过清除其字段可以删除一个记录,但是该记录仍在文件中存在。通常文件中不能有空记录,因为它们会浪费空间且会干扰顺序操作。最好把余下的记录拷贝到一个新文件,然后删除老文件。
要清除随机访问文件中删除的记录,请按照以下步骤执行:
创建一个新文件。
把有用的所有记录从原文件复制到新文件。
关闭原文件并用 Kill 语句删除它。
使用 Name 语句把新文件以原文件的名字重新命
但是,如果你熟悉文件在磁盘中存储的方式,就知道,“在 A 中把已经读出的记录删除”很麻烦。
实际上,删除部分文本文件内容,无论它们是连续的还是离散的,实际上都是要删除原来的文件,保存新文件。这样必然涉及大量的磁盘操作,速度很慢。
所以,请你换一个思路。如果是顺序地读,维护一个指针就可以了,下一次从新的指针处读起;如果是随机地读(必须是定长记录,用随机方式打开),需要将已读记录的字段清空。但实际上记录仍然存在。
要从物理上删除记录,实际上需要重建文件。下面是 MSDN 的有关说明:
删除记录
通过清除其字段可以删除一个记录,但是该记录仍在文件中存在。通常文件中不能有空记录,因为它们会浪费空间且会干扰顺序操作。最好把余下的记录拷贝到一个新文件,然后删除老文件。
要清除随机访问文件中删除的记录,请按照以下步骤执行:
创建一个新文件。
把有用的所有记录从原文件复制到新文件。
关闭原文件并用 Kill 语句删除它。
使用 Name 语句把新文件以原文件的名字重新命
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯