Perl IO:read()函数】的更多相关文章

sysopen() open()和sysopen()都打开文件句柄,open()是比较高层次的打开文件句柄,sysopen()相对要底层一点.但它们打开的文件句柄并没有区别,只不过sysopen()有一些自己的特性:可以使用几个open()没有的flag,可以指定文件被创建时的权限等. 一定要注意的是,io buffer和open().sysopen()无关,而是和读.写的方式有关,例如read().getc()以及行读取都使用io buffer,而sysread.syswrite则直接绕过io…
文件句柄和文件描述符的关系 文件描述符是操作系统的资源,对于实体文件来说,每打开一次文件,操作系统都会为该进程分配一个文件描述符来关联(指向)这个文件,以后操作文件数据都根据这个文件描述符来操作,而不是文件名.就像对文件句柄的操作一样. 实际上,文件句柄.文件描述符和实体文件的关系存在层次上的关系.文件句柄指向文件描述符,文件描述符指向实体文件结构.如下图: (图注:fd是用户空间的内容,图中放在内核层是为了概括与之关联的内核层的几个结构:fd对应内核层的这几个结构) 正如图中所示,文件句柄是文…
三篇Perl IO基础类文章: Perl的IO操作(1):文件句柄 Perl的IO操作(2):更多文件句柄的模式 Perl文件句柄相关的常见变量 IO对象和IO::Module家族模块 无论是哪种高级编程语言,都提供了较底层的操作系统层IO能力,也提供了更高层次的封装来实现语言级别的IO能力. 像文件描述符这种东西,是属于操作系统层的,比较底层,它是操作系统负责管理的资源.对于Perl来说,文件句柄是Perl提供的比文件描述符更上一层的Perl IO层次的东西,文件句柄直接指向文件描述符(非一一…
perl的map函数的使用: 语法 map EXPR, LIST map BLOCK LIST 定义和使用 对list中的每个元素执行EXPR或BLOCK,返回新的list.对每一此迭代,$_中保存了当前迭代的元素的值. 返回值 如果返回值存储在scalar标量中,则代表map()返回数组的元素个数: 如果返回值存储在list中,则代表map()函数的数组: 实例1 (将单词首字母大写) #!/usr/bin/perl -w@myNames = ('jacob', 'alexander', 'e…
perl有引用的概念:一组数据实际上是另一组数据的引用.这些引用称为指针,第一组数据中存放的是第二组数据的头地址.引用的方式被用得相当普遍,特别是在面向对象的模块.函数的参数传递等常见.但perl对每个引用都是以一个普通的变量来定义的,有时候,如果数据的架构比较复杂,我们可能会困惑于某个变量所指向的地址的实际内容是什么?perl的ref函数就可以帮助我们. 一.说明从perl自带的帮助说明可以了解相关的用法: 引用 $ perldoc -tf refref EXPRref     Returns…
BIO的IO操作函数     ---依据openssl doc/crypto/bio/bio_read.pod翻译和自己的理解写成          (作者:DragonKing Mail:wzhah@263.net 公布于:http://gdwzh.126.com之openssl专业论坛)          这些函数是BIO的基本读写操作函数,包含四个,他们的定义例如以下(openssl/bio.h):      int BIO_read(BIO *b, void *buf, int len)…
Perl字符串处理函数 0.函数名 index 调用语法position=index(string,substring,position); 解说返回子串substring在字符串string中的位置,如果不存在则返回-1.参数position是可选项,表示匹配之前跳过的字符数,或者说从该位置开始匹配. 1.函数名 rindex 调用语法position=rindex(string,substring,position); 解说与index类似,区别是从右端匹配. 2.函数名 length 调用…
对于某些字符串,需要输入为特定的格式,通过sprintf可以很方便的完成,不需要专门进行其他处理. 转载 perl中sprintf函数的使用方法.…
read()函数 read()函数用于从文件句柄中读取指定字节数的数据并写入到一个标量中.如果文件句柄是以Unicode方式打开的,则表示读取指定字符数而非字节数. 有两种read方式: read FH, $var, len read FH, $var, len, offset 三参数的read表示从FH文件句柄中读取len字节长度的数据放进标量变量$var中.四参数的read稍后解释. 例如: #!/usr/bin/perl use strict; use warnings; # 打开标准输入…
随机读写 如果一个文件句柄是指向一个实体文件的,那么就可以对它进行随机数据的访问(包括随机读.写),随机访问表示可以读取文件中的任何一部分数据或者向文件中的任何一个位置处写入数据.实现这种随机读写的功能依赖于一个文件读写位置指针(file pointer). 当一个文件句柄关联到了一个实体文件后,就可以操作这个文件句柄,比如通过这个文件句柄去移动文件的读写指针,当这个指针指向第100个字节位置处时,就表示从100个字节处开始读数据,或者从100个字节处开始写数据. 可以通过seek()函数来设置…