免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3277 | 回复: 5
打印 上一主题 下一主题

请问perl打开一个可写入的文件后怎样才能读取他的内容 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-03-22 00:13 |只看该作者 |倒序浏览
我用在当前目录下放了一个rd.txt的文件,用如下代码打开后无法读取他的内容,只能用open(FF,"rd.txt")种方式才可以读取打印他的内容。请问代码要怎样修改才可以  打印  用可写入方式  打开的文件???

open(FF,">>rd.txt");
@a=<FF>;
print @a;

论坛徽章:
0
2 [报告]
发表于 2010-03-22 04:09 |只看该作者
open(FF,"+>>rd.txt");

论坛徽章:
0
3 [报告]
发表于 2010-03-22 15:58 |只看该作者
不行啊,加了那个 +也一样,没有任何输出

论坛徽章:
78
双子座
日期:2013-10-15 08:50:09天秤座
日期:2013-10-16 18:02:08白羊座
日期:2013-10-18 13:35:33天蝎座
日期:2013-10-18 13:37:06狮子座
日期:2013-10-18 13:40:31双子座
日期:2013-10-22 13:58:42戌狗
日期:2013-10-22 18:50:04CU十二周年纪念徽章
日期:2013-10-24 15:41:34巨蟹座
日期:2013-10-24 17:14:56处女座
日期:2013-10-24 17:15:30双子座
日期:2013-10-25 13:49:39午马
日期:2013-10-28 15:02:15
4 [报告]
发表于 2010-03-22 16:33 |只看该作者
>>这种是写的方式,读的话应该用open(FF,"rd.txt");

不能一边读一边写

论坛徽章:
0
5 [报告]
发表于 2010-03-23 09:50 |只看该作者
哈哈,查到方法了,因为追加方式打开的文件,指针会在文件尾(用tell函数可以测出结果),所以如果要读的话需要将指针移到文件开头(可以用seek函数),之后再将他句柄赋值给数组就可以读出他的结果了。不过还是需要用二楼的open(FF,"+>>rd.txt");

论坛徽章:
0
6 [报告]
发表于 2010-03-23 11:44 |只看该作者
本帖最后由 toniz 于 2010-03-23 11:45 编辑

直接用 +< 读更新就可以了
  1. open(FF,"+< rd.txt");
  2. @a=<FF>;
  3. print @a;
复制代码
:wink:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP