声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2042|回复: 5

怎样删除指定文件中的某一行内容?

[复制链接]
发表于 2005-12-22 16:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
想把文件中的某一行内容改写,而且不影响其他行,发现fopen('文件','r+')后<BR>用fprintf改写,只是覆盖,如果覆盖的内容长度比文件中原有的内容短,则只能覆盖部分。<BR>想能把文件原来这一行内容删掉再重写,怎么实现呢?3x<BR>
回复
分享到:

使用道具 举报

发表于 2005-12-22 21:06 | 显示全部楼层

回复:(sunnytomy)怎样删除指定文件中的某一行内容?...

重写一个文件不行吗?
 楼主| 发表于 2005-12-22 22:20 | 显示全部楼层
这个文件几千行,写不了的
发表于 2005-12-23 09:03 | 显示全部楼层

回复:(sunnytomy)怎样删除指定文件中的某一行内容?...

加一个循环,用fscanf一行行读入,然后用fprintf写到另一个文件中去<BR>加一个判断,判断你要删除的行不写入不就行了吗?
发表于 2005-12-23 11:53 | 显示全部楼层

回复:(sunnytomy)怎样删除指定文件中的某一行内容?...

<P>一个笨办法,先用一长串空格把不需要的覆盖。<BR>只要加一条fprint语句</P>
 楼主| 发表于 2005-12-23 12:02 | 显示全部楼层
长窜空格覆盖原来信息这个办法我试过了,出现一个很大的问题,比如文件前三行为:<BR>aaaaa<BR>bbbbbbbbbb<BR>cccccccccc<BR><BR>我要删去第二行,或者把新的内容覆盖到第二行。如果覆盖的内容(空格就是删除)长度比此行长,用fprint就会覆盖到第三行去,并且把第三行的内容提到了第二行。大家可以试试有没有这个问题。<BR>注意一点就是第二行后面是没有空格的,长度只有10个字符。<BR><BR>所以请教有没有一个修改第二行的好办法,又不影响到第三行内容的,不论长度如何变化
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-26 05:16 , Processed in 0.057192 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表