论坛: 编程破解 标题: 怎么在文件中实现删除记录? 复制本贴地址    
作者: zhoen889 [zhoen889]    论坛用户   登录
最近做了一个程序,需要实现删除文件中原来的记录,不知道怎么删除,请各位知道的高手指教指教!!!
多谢!!!

地主 发表时间: 04-04-27 06:44

回复: 286 [unique]   版主   登录
创建时直接往里写新内容就能直接删除原有内容.

B1层 发表时间: 04-04-27 09:03

回复: yingzike [yingzike]   论坛用户   登录
更简单的一点
c:\>echo abc>ccc  //把aaa加入到文件ccc中

c:\>type ccc    //看一下内容
abc

c:\>echo ddd>ccc  //重新把ddd加入到文件ccc中,原来的aaa已没了

c:\>type ccc  //果然没有了
ddd

c:\>_ 



B2层 发表时间: 04-04-27 11:45

回复: zml2236 [zml2236]   论坛用户   登录
顶,不过,你那还差了点,楼主要的是删除,而不是修改,并且是个程序,就应该把你写的这些另存为.bat。

B3层 发表时间: 04-04-27 13:19

回复: zhoen889 [zhoen889]   论坛用户   登录
例如:
fstream fp;
fp.open("d:\demo.dat",ios::in|ios::out|ios::binary);
for(i=1; i<n; i++)
{
...
...
fp.write((char*)&stu,sizeof(stu));
}
fp.close();
这样完成了内容的写入
但是我想把其中的一个记录直接删除掉,如果要是用创建时直接往里写新内容就能直接删除原有内容,我感觉有点麻烦,请问大家有没有其他的方法。
如果没有的话,那也只好那样了,我想有些时候总是不太随心愿!!
多谢!!!

B4层 发表时间: 04-04-27 17:42

回复: lwei889 [lwei889]   论坛用户   登录
你先把想删除的记录读到缓冲区里,在把这些记录冲缓冲区里删除,再重新写回。这样试一下。
不知道行不行?

B5层 发表时间: 04-04-30 13:49

回复: lida1818 [lida1818]   论坛用户   登录



[此贴被 烟雨平生(lida1818) 在 04月30日14时28分 编辑过]

B6层 发表时间: 04-04-30 14:26

回复: sniper167 [sniper167]   论坛用户   登录


B7层 发表时间: 04-05-01 17:56

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号