LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 605|回复: 4

请教 文件处理问题

[复制链接]
发表于 2007-5-1 12:40:47 | 显示全部楼层 |阅读模式
一个程序,模拟shell解释器
我把ls后的结果保存在临时文件中,
如果判断io定向的话就将临时文件复制,
然后删除临时文件:
如何将临时文件一行一行读入到stdio啊? 行数未知...
while(feof())
    fgets(...);
这样?还是有更好的方法?
我查了好多资料都没有提到这样的i/o处理:
复制文件和删除文件..
多谢解答..
发表于 2007-5-1 13:54:08 | 显示全部楼层
Post by Klinux
一个程序,模拟shell解释器
我把ls后的结果保存在临时文件中,
如果判断io定向的话就将临时文件复制,
然后删除临时文件:
如何将临时文件一行一行读入到stdio啊? 行数未知...
while(feof())
    fgets(...);
这样?还是有更好的方法?
我查了好多资料都没有提到这样的i/o处理:
复制文件和删除文件..
多谢解答..

看书吧,书上都讲了。
回复 支持 反对

使用道具 举报

发表于 2007-5-2 10:13:44 | 显示全部楼层
Post by Klinux
一个程序,模拟shell解释器
我把ls后的结果保存在临时文件中,
如果判断io定向的话就将临时文件复制,
然后删除临时文件:
如何将临时文件一行一行读入到stdio啊? 行数未知...
while(feof())
    fgets(...);
这样?还是有更好的方法?
我查了好多资料都没有提到这样的i/o处理:
复制文件和删除文件..
多谢解答..
为什么必须是一行一行地读呢?
回复 支持 反对

使用道具 举报

发表于 2007-5-4 15:37:28 | 显示全部楼层
Post by Klinux
一个程序,模拟shell解释器
我把ls后的结果保存在临时文件中,
如果判断io定向的话就将临时文件复制,
然后删除临时文件:
如何将临时文件一行一行读入到stdio啊? 行数未知...
while(feof())
    fgets(...);
这样?还是有更好的方法?

这已是很好的办法了。

  1. 我查了好多资料都没有提到这样的i/o处理:
  2. 复制文件和删除文件..
  3. 多谢解答..
复制代码

直接复制文件可以用系统调用system();否则可以自己写一个,就是fopen,fread,fwrite,fclose的操作。
删除文件用unlink()
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-5 22:59:34 | 显示全部楼层
thanks..
已经搞定了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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