| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5278 人关注过本帖
标题:如何删除文件中的一条记录
只看楼主 加入收藏
baobaoisme
Rank: 7Rank: 7Rank: 7
来 自:AVATAR
等 级:黑侠
帖 子:260
专家分:506
注 册:2010-7-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
如何删除文件中的一条记录
说明一下,文件中的每条记录大小是固定的,即每条记录都是用同一结构体来定义的
我一开始想把文件中所有记录读入内存,然后删除相应记录,再重新存入文件中,
但是感觉文件太大的话,读入读出很是麻烦。
我的问题是,如何避免重新输出文件的问题,即在内存中删除相应文件记录后(即已经找出要删除文件中记录的位置),怎样直接在文件中删除相应记录

[ 本帖最后由 baobaoisme 于 2011-2-26 11:48 编辑 ]
搜索更多相关主题的帖子: 结构体 
2011-02-26 11:42
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
文件什么的我不精通

免费赠送河蟹一只
2011-02-26 12:01
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:0 
很简单 你这样都不知道?
2011-02-26 13:35
baobaoisme
Rank: 7Rank: 7Rank: 7
来 自:AVATAR
等 级:黑侠
帖 子:260
专家分:506
注 册:2010-7-9
收藏
得分:0 
知道我就不问了。。。
2011-02-26 13:40
buffer
Rank: 5Rank: 5
等 级:职业侠客
帖 子:73
专家分:326
注 册:2010-12-31
收藏
得分:5 
以下是引用baobaoisme在2011-2-26 11:42:36的发言:
,怎样直接在文件中删除相应记录

没办法直接删除,只能覆盖掉。除非你用数据库。
2011-02-26 13:45
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:5 
把文件的指针移动到你修改了的记录那
然后写入一个结构体的内容  把这条记录覆盖了

呵呵  我也是猜测

                                         
===========深入<----------------->浅出============
2011-02-26 14:16
cacker
该用户已被删除
收藏
得分:10 
提示: 作者被禁止或删除 内容自动屏蔽
2011-02-26 14:16
baobaoisme
Rank: 7Rank: 7Rank: 7
来 自:AVATAR
等 级:黑侠
帖 子:260
专家分:506
注 册:2010-7-9
收藏
得分:0 
回复 7楼 cacker
感谢您的回答,你的回答也让我想起了操作系统中的索引文件,可以做一个索引文件,将原文件中的每条记录的关键信息抽出,然后存储成一个索引文件,读入内存的时候便可以避免全部读入原文件了,同时每个文件像您说的做出删除标记,想要修改文件时将索引文件读入内存,然后在索引中寻找需要修改的记录位置,再回去覆盖原纪录需要进行修改的位置即可
2011-03-01 12:40
快速回复:如何删除文件中的一条记录
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026058 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved