Perl文件读写
Perl File Handling: open, read, write and close files
#====================
Opening files
Solution 1:
Opening a file in perl
open FILE, "filename.txt" or die $!; # read
open FILEHANDLE, MODE, EXPR
The available modes are the following:
mode | operand | create | truncate |
---|---|---|---|
read | < | ||
write | > | ✓ | ✓ |
append | >> | ✓ |
Each of the above modes can also be prefixed with the + character to allow for simultaneous reading and writing.
mode | operand | create | truncate |
---|---|---|---|
read/write | +< | ||
read/write | +> | ✓ | ✓ |
read/append | +>> | ✓ |
open FILE, ">", "filename.txt" or die $!
#write
open FILE, ">filename.txt" or die $!;
#write
Solution 2:
#!/usr/bin/perl open(FILE
, "<file.txt") or die "Couldn't open file file.txt, $!"; while(<FILE
>){
print "$_";
}
Following is the table which gives possible values of different modes
Entities | Definition |
---|---|
< or r | Read Only Access |
> or w | Creates, Writes, and Truncates |
>> or a | Writes, Appends, and Creates |
+< or r+ | Reads and Writes |
+> or w+ | Reads, Writes, Creates, and Truncates |
+>> or a+ | Reads, Writes, Appends, and Creates |
Solution 3:
sysopen(FILE, "file.txt", O_RDWR|O_TRUNC );
Following is the table which gives possible values of MODE
Entities | Definition |
---|---|
O_RDWR | Read and Write |
O_RDONLY | Read Only |
O_WRONLY | Write Only |
O_CREAT | Create the file |
O_APPEND | Append the file |
O_TRUNC | Truncate the file |
O_EXCL | Stops if file already exists |
O_NONBLOCK | Non-Blocking usability |
#====================
Reading files
read a text file line-by-line
my @lines = <FILE>;
while (<FILE>) { print $_; }
while (my $line = <FILE>) { ...
}
read a file only a few characters at a time
open FILE, "picture.jpg" or die $!;
# read
binmode FILE;
my ($buf, $data, $n);
while (($n = read FILE, $data, 4) != 0)
{ print "$n bytes read\n"; $buf .= $data; }
close(FILE);
#====================
Writing files
open FILE, ">file.txt" or die $!; #write
print FILE $str;
close FILE;
#====================
Closing files
open FILE1, "file.txt" or die $!;
# read
open FILE2, "picture.jpg" or die $!;
# read
...
close FILE2;
close FILE1;
#====================
REF:
http://www.perlfect.com/articles/perlfile.shtml
Perl文件读写的更多相关文章
- perl5 第五章 文件读写
第五章 文件读写 by flamephoenix 一.打开.关闭文件二.读文件三.写文件四.判断文件状态五.命令行参数六.打开管道 一.打开.关闭文件 语法为open (filevar, file ...
- perl文件操作
Perl 文件操作 Perl 使用一种叫做文件句柄类型的变量来操作文件. 从文件读取或者写入数据需要使用文件句柄. 文件句柄(file handle)是一个I/O连接的名称. Perl提供了三种文件句 ...
- 【Win 10 应用开发】文件读写的三种方案
本文老周就跟伙伴们探讨一下关于文件读写的方法.总得来说嘛,有三种方案可以用,而且每种方案都各有特色,也说不上哪种较好.反正你得记住老祖宗留给我们的大智慧——事无定法,灵活运用者为上. OK,咱们开始吧 ...
- c语言文件读写操作总结
C语言文件读写操作总结 C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程 ...
- ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0,现把学习结果分享一下,希望对新手有帮助. 目录 ActionScript 3.0简介 Hello ...
- Android 文件读写
一.分类 文件读写作为Android四大数据存储方式之一,又分为内部存储和外部存储两种: (1)内部存储(Internal storage): 总是可用. 文件默认情况存储在/data/data/包名 ...
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- 【Python】[IO编程]文件读写,StringIO和BytesIO,操作文件和目录,序列化
IO在计算机中指Input/Output,也就是输入和输出. 1.文件读写,1,读文件[使用Python内置函数,open,传入文件名标示符] >>> f = open('/User ...
- [转]Android - 文件读写操作 总结
转自:http://blog.csdn.net/ztp800201/article/details/7322110 Android - 文件读写操作 总结 分类: Android2012-03-05 ...
随机推荐
- 【BZOJ】【2500】幸福的道路
树形DP+单调队列优化DP 好题(也是神题……玛雅我实在是太弱了TAT,真是一个250) 完全是抄的zyf的……orz我还是退OI保平安吧 第一步对于每一天求出一个从第 i 个点出发走出去的最长链的长 ...
- CSS中的视觉格式化模型
视觉格式化模型 1. 简介 在视觉格式化模型中,文档树中的每个元素都将会根据盒模型产生零到多个盒子.这些盒子的布局由如下因素决定: 盒子的尺寸和类型 定位策略(正常文档流,浮动或者绝对定位) 和文档树 ...
- word插件开发 运行时,插件不启动.
word插件开发 运行时,插件不启动. 查看插件信息时. 在禁用的应用程序加载项中. 启动禁用的插件: 点击转到. 选择你要启动的插件就可以了.
- PowerDesigner(六)-物理数据模型(PDM逆向工程)(转)
物理数据模型PDM 物理数据模型(Physical Data Model,PDM):在数据库的逻辑结构设计好之后,就需要完成其物理设计,PDM就是为实现这一目的而设计的. 物理数据模型是以常用的DBM ...
- RCC 2014 Warmup (Div. 2)
一场很很多HACK的比赛,PREtest太弱了,真的很多坑!平时练习的时候很少注意这些东西了! A:开始一直在模拟,后来发现自己的思路逻辑很乱,果然做比赛不给力! 直接在代码中解释了 #include ...
- eclipse编译项目jar,git管理代码
2015-3-10 settings.xml文件: <localRepository>C:\Users\xxx\.m2\repository</localRepository> ...
- (转)Linux进程间通信
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢nonoob纠错 我们在Linux信号基础中已经说明,信号可以看作一种粗糙的进 ...
- MySQL 百万级分页优化
MySQL 百万级分页优化 http://www.jb51.net/article/31868.htm 一般刚开始学SQL的时候,会这样写 : , ; 但在数据达到百万级的时候,这样写会慢死 : , ...
- MyEclipse编码设置
(1)windows---->Preferences (2)general---->Workspace (3)设置编码
- 2014多校第二场1011 || HDU 4882 ZCC Loves Codefires (贪心)
题目链接 题意 : 给出n个问题,每个问题有两个参数,一个ei(所要耗费的时间),一个ki(能得到的score).每道问题需要耗费:(当前耗费的时间)*ki,问怎样组合问题的处理顺序可以使得耗费达到最 ...