fopen、fwrite、fprint、fread 和 fclose 命令可用于处理文件。        

打开文件

 在读取或写入文件前,需要使用 fopen 函数打开文件。

fopen 有两个字符串参数:

  • 一个包含文件名的字符串。

  • 利用可选模式字符串,可以指示打开文件是进行读取 (“r”)、写入 (“w”) 还是附加 (“a”) 操作。                  

    如果将“+”字符添加到模式字符,Maya 会打开文件进行读/写。                  

    如果省略此参数,默认进行读取。                  


fopen 返回文件控制柄。文件控制柄表示打开文件。应将该值保存到变量中,以使用 fprint 等其他命令打开文件。

$fileId = fopen($exampleFileName,"r");

从文件读取

一旦打开文件进行读取,就可以使用以下某个命令从文件读取数据:        

 

目标使用该命令

读取一行(读取到下一个新行)。

fgetline (fileID)

读取字词(读取到下一个空格)。

fgetword (fileID)

读取单个值。

fread (fileID,类型)

例如:

// Read a file one line at a time $fileId=fopen($exampleFileName,"r"); string $nextLine = `fgetline $fileId`; while ( size( $nextLine ) > 0 ) { print ( $nextLine ); $nextLine = `fgetline $fileId`; }

测试文件的末尾

如果处在文件末尾,feof <fileID> 函数将返回非零值。

string $nextWord = `fgetword $fileId`; while ( !feof($fileId) ) { print ( $nextWord + " " ); $nextWord = fgetword($fileId); }

如果打开一个空文件,feof 将不会检测到它在文件的末尾,直到执行至少一个读取。

写入文件

一旦打开文件进行写入或附加操作,便可以使用以下某个命令向文件写入数据:        

 

目的使用该命令

使用打印命令的同等命令打印到文件。

fprint (fileID,字符串)

写入二进制数据。

fwrite (fileID,值)

例如:

$fileId = fopen($exampleFileName,"w"); fprint($fileId,"Hello there "); fclose($fileId);

fwrite 命令将二进制格式的数据参数写入文件。它将字符串作为 ASCII 写入,结尾带一个 NULL 字符。不应使用 fwrite 来写入文本文件或编写原始字节,除非结尾需要一个 NULL 字符。

管理打开文件

若要清除写缓冲区而不关闭文件,请使用fflush (fileID)。

若要将文件位置指针重置到文件的开头,请使用frewind (fileID)。

关闭打开文件

若要关闭打开文件,请使用fclose (fileID)。

,