PERL编程24学时教程——05 进行文件操作.pdf

PERL编程24学时教程——05 进行文件操作.pdf

ID:52239985

大小:623.56 KB

页数:11页

时间:2020-03-25

PERL编程24学时教程——05 进行文件操作.pdf_第1页
PERL编程24学时教程——05 进行文件操作.pdf_第2页
PERL编程24学时教程——05 进行文件操作.pdf_第3页
PERL编程24学时教程——05 进行文件操作.pdf_第4页
PERL编程24学时教程——05 进行文件操作.pdf_第5页
资源描述:

《PERL编程24学时教程——05 进行文件操作.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、下载第5学时进行文件操作到现在为止,我们介绍的Perl程序都是独立的程序。除了向用户提供消息和接收来自键盘的输入信息外,它们无法与外界进行通信。这种状况将要改变。Perl是一种能够进行文件输入和输出(文件I/O)的非常出色的语言。Perl的标量能够延伸,以便将尽可能长的记录存放在文件中,另外,Perl的数组能够扩展,以便存放文件的全部内容,当然这必须是在内存允许的情况下才能做到。当数据包含在Perl的标量和数组中时,可以对该数据进行不受限制的操作,并且可以编写新的文件。当你读取数据或者将数据写入文件时,Perl总是尽量设法不妨碍你的操作。在某些地方,

2、Perl的内置语句甚至进行了优化,以便执行常用类型的I/O操作。在本学时中,我们将要介绍Perl怎样使你能够访问文件中你可以使用的所有数据。在本学时中,你将要学习:¥如何打开和关闭文件。¥如果将数据写入文件。¥如何从文件中读取数据。¥如何使你编写的Perl程序具备保护功能,从而使其更加强大。5.1打开文件若要在Perl中读取文件或写文件,必须打开一个文件句柄。Perl中的文件句柄实际上是另一种类型的变量,它们可以作为在你的程序与操作系统之间对某个特定文件使用的非常方便的一个引用(即句柄,如果你愿意这样说的话)。句柄包含了关于如何打开文件和你在文件中读

3、(或写)到了什么位置等信息。它们还包含了用户定义的关于如何读写文件的属性。在前面的课程中,你已经熟悉了一个句柄,即STDIN。该句柄是在启动程序时Perl自动赋予你的,它通常与键盘设备相连接(后面还要更加详细地介绍STDIN)。文件句柄名字的格式与第2学时介绍的变量名基本相同,不同之处是句柄的名字前面没有类型标识符($、@)。由于这个原因,句柄名字最好使用大写字母,这样就不会与Perl的当前和将来的保留字foreach、else和if等发生冲突。也可以将字符串标量或能够返回字符串的任何东西(如函数)用作文件句柄名。这种类型的句柄名称为间接句柄。描述它

4、们的用法会给Perl的初学者造成一些混乱。关于间接句柄的详细说明,请参见perlfunc手册页中关于open的在线文档。每当需要访问磁盘上的文件时,必须创建一个新的文件句柄,并且打开该文件句柄,进行相应的准备。当然必须使用open函数来打开文件句柄。Open的句法如下:open(filehandle,pathname)open函数将文件句柄作为它的第一个参数,将路径名作为第二个参数。路径名用于指明54使用第一部分Perl基础下载要打开哪个文件,因此,如果没有设定完整的路径名,比如c:/windows/system/,那么open函数将设法打开当前目录

5、中的文件。如果open函数运行成功,它将返回一个非0值。如果open函数运行失败,它返回undef(假):在上面这个代码段中,如果open运行成功,它计算得出的值是真,而if代码块则用打开的文件句柄MYFILE来运行。否则,文件不能打开,代码的else部分开始运行,这表示出现了错误。在许多Perl程序中,这个“打开或失败”语句是使用die函数来编写的。die函数用于停止Perl程序的执行,并且输出下面这个出错消息:在这个消息中,scriptname是Perl程序的名字,xxx是遇到die的行号。die和open这两个函数常常以下面的形式同时出现:这一

6、行代码可以读作“打开或撤消”,它有时表示你想要让程序如何处理没有打开的文件。如果open运行没有成功,也就是说它返回FALSE,那么逻辑OR(

7、

8、)必须计算右边的参数(die);如果open运行成功了,也就是说它返回TRUE,那么就不要计算die的值。这个习惯用语也可以用逻辑OR的另一个符号or来书写。当你完成文件句柄的操作后,将文件句柄关闭,这是个很好的编程习惯。关闭文件句柄的操作,将通知操作系统说,该文件句柄可以重复使用,同时,尚未为文件句柄写入的数据现在可以写入磁盘。另外,你的操作系统只允许打开规定数量的文件句柄,如果超过这个数量,你就不能打开

9、更多的文件句柄,除非关闭某些句柄。若要关闭文件句柄,可以使用下面这个close函数:如果文件句柄名字重复使用,即另一个文件用相同的文件句柄名字打开,那么原始文件句柄将先被关闭,然后重新打开。5.1.1路径名到现在为止,我们只是用类似novel.txt的名字来打开文件。当试图打开没有设定目录名的文件名时,Perl假定该文件是在当前目录中。若要打开位于另一个目录中的文件,必须使用路径名。路径名用于描述Perl为了打开系统中的文件而必须使用的路径。若要设定路径名,可以使用你的操作系统期望的方式来设定,如下面这个例子所示:在Windows和MS-DOS系统下

10、,设定Perl中的路径名时可以使用反斜杠作为路径名分隔符,比如Windowsuserpierceo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。