急。文本操作:怎样插入数据?

FlyPast 2004-05-06 05:34:30
内容这样
111111111111
222222222222

现要插入一条成
111111111111
aaaaaaaaaaaa
222222222222

而不重写整个文件?我想了2天了 没思路!

...全文
37 12 点赞 打赏 收藏 举报
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hackfan 2004-05-07
文件锁得用处就是在这里体现!
  • 打赏
  • 举报
回复
hackfan 2004-05-07
不太可能!我觉得是不可能。
以前使用Perl的时候就没听说过有这个技术
  • 打赏
  • 举报
回复
FlyPast 2004-05-06
......无语拉

###意思就是说不重写整个文件 而只改变其中一行数据###
fseek定位后用fwrite写入是覆盖后面的字符串

现在意思是说不覆盖 而是添加.........
  • 打赏
  • 举报
回复
uuq 2004-05-06
$fp=fopen("aa.txt",r+);
$str="aaaaaaaaaaaaaaaaaaaaaaaaaaa\r\n";
if($fp)
{
while(!feof($fp))
{
fgets($fp,8888);
fwrite($fp,$str);
}
}
不知对不对,楼主何用。
  • 打赏
  • 举报
回复
FlyPast 2004-05-06
呵呵

###意思就是说不重写整个文件 而只改变其中一行数据###
  • 打赏
  • 举报
回复
hahawen 2004-05-06
$str = "aaaaaaaaaaaaaaaaa";
$pos = 2;
$data = file("aa.txt");
$content = implode("\r\n", array_slice($data, 0, $pos))."$str\r\n".implode("\r\n", array_slice($data, $pos));
$fp = fopen('aa.txt', "w");
fwrite($fp, $content);
fclose($fp);
  • 打赏
  • 举报
回复
FlyPast 2004-05-06
呵呵
意思就是说不重写整个文件 而只改变其中一行数据

使用fwrite 到 文本中间的话是覆盖写入 不能插入

又没有其他函数 真的就实现不了了吗
  • 打赏
  • 举报
回复
hackfan 2004-05-06
插入一定要把内容读出来
然后根据判断插入的,没办法的
  • 打赏
  • 举报
回复
uuq 2004-05-06
呵还是有人跟我抢时间。
  • 打赏
  • 举报
回复
52juanjuan 2004-05-06
file_put_contents()刚才写错了,不好意思
  • 打赏
  • 举报
回复
uuq 2004-05-06
楼主是边个。绝望生鱼片。熟眼。
你不写怎么存起来。还是要写
  • 打赏
  • 举报
回复
52juanjuan 2004-05-06
如果插入到文本后面可以用fwrite()及fput_content()来实现,插入到中间不清楚
  • 打赏
  • 举报
回复
相关推荐
发帖
基础编程
加入

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2004-05-06 05:34
社区公告
暂无公告