文件操作函数
注意:文件操作函数中所涉及到文件的路径均为绝对路径
!FileAppend(strTarget,strSource)
函数意义:将文件strSource中的内容添加到文件strTarget后面,使两文件合并为一个
文件。
返 回 值:开关型。
参 数:strTarget,字符型,目标文件,需要写绝对路径;
strSource,字符型,源文件,需要写绝对路径。
实 例:!FileAppend(\。
实例说明:将D盘下文件b.txt合并到文件a.txt的后面。若a.txt不存在,则会自动
新建一个文件。
!FileCopy(strSource,strTarget)
函数意义:将源文件strSource复制到目标文件strTarget,若目标文件已存在,则将目标
文件覆盖。
返 回 值:开关型;
返回0,操作不成功; 返回非0值,操作成功。
参 数:strSource,字符型,源文件;
strTarget,字符型,目标文件。
实 例:!FileCopy(\a.txt\\\b.txt\。 实例说明:将D盘下文件a.txt复制到b.txt。
!FileDelete(strFilename)
函数意义:将strFilename指定的文件删除。 返 回 值:开关型;
返回0,操作不成功; 返回非0值,操作成功。
参 数:str1,字符型,将被删除的文件。 实 例:!FileDelete(\。 实例说明:删除将D盘下文件a.txt。
!FileFindFirst(strFilename,objName,objSize,objAttrib)
函数意义:查找第一个名字为strFilename的文件或目录。 返 回 值:开关型;
返回-1,操作不成功。
返回其它值:操作成功,返回值为一个句柄,该值为以后的查找提供根据。
参 数:strFilename,字符型,要查找的文件的文件名(文件名中可以包含文件通配
符:*和?);
objName,字符型对象名,函数调用成功后,保存查找结果的名称。 objSize,数值型对象名,函数调用成功后,保存查找结果的大小; objAttrib,数值型对象名,函数调用成功后,保存查找结果的属性: 若objAttrib = 0,则查找结果为一个文件; 若objAttrib = 1,则查找结果为一个目录。
实 例:!FileFindFirst(\。
实例说明:查找D盘下第一个名字为:a*.txt的文件或目录,将查找结果的属性存入Attrib
数值变量中,大小存入Size数值变量中,名字存入Name数值变量中。
!FileFindNext(FindHandle,objAttrib,objSize,objName)
函数意义:根据FindHandle提供的句柄,继续查找下一个文件或目录。 返 回 值:开关型;
返回0:查找不成功; 返回非0值:查找成功。
参 数:FindHandle,开关型,由函数!FileFindFirst返回。
objAttrib,数值型对象名,函数调用成功后,保存查找结果的属性: 若objAttrib = 0,则查找结果为一个文件; 若objAttrib = 1,则查找结果为一个目录。
objSize,数值型对象名,函数调用成功后,保存查找结果的大小; objName,字符型对象名,函数调用成功后,保存查找结果的名称。
实 例:!FileFindNext(aa,Attrib,Size,Name)。
实例说明:根据句柄aa,继续查找下一个文件或目录,其中,aa由函数!FileFindFirst
的返回值提供。
注 意:!FileFindFirst()必须与!FileFindNext()在同一个脚本块中编写才有效。
!FileIniReadValue(strIniFilename,strSection,strItem,objResult)
函数意义:从配置文件(.ini文件)中读取一个值。 返 回 值:开关型。
参 数:strIniFilename,字符型,配置文件的文件名;
strSection,字符型,要读取数据所在的节的名称; strItem,字符型,要读取数据的项名;
objResult,数值型、字符型对象名,用于保存读到的数据;
实 例:!FileIniReadValue(\。
实例说明:从配置文件a.ini中的system节中读取memory项的值,并将该值放入result
数据对象中。
!FileIniWriteValue(strIniFilename,strSection,strItem,objResult)
函数意义:向配置文件(.ini文件)中写入一个值。 返 回 值:开关型。
参 数:strIniFilename,字符型,配置文件的文件名;
strSection,字符型,要写入数据所在的节的名称; strItem,字符型,要读写入据的项名;
objResult,数值型、字符型对象名,用于保存写入的数据;
实 例:!FileIniWriteValue(\。
实例说明:将数据对象result的值写入到配置文件a.ini中的system节中memory项中。
!FileIniWriteNoFlush(strIniFilename,strSection,strItem,objResult)
函数意义:!FileIniWriteNoFlush(strIniFilename,strSection,strItem,objResult) 函数
和!FileIniWriteValue接口和功能基本一致,只是写完后不刷新磁盘;
返 回 值:开关型。
参 数:strIniFilename,字符型,配置文件的文件名;
strSection,字符型,要写入数据所在的节的名称; strItem,字符型,要读写入据的项名;
objResult,数值型、字符型对象名,用于保存写入的数据;
实 例:!FileIniNoFlush(\。
实例说明:将数据对象result的值写入到配置文件a.ini中的system节中memory项中。
此时值被写入内存,磁盘未被刷新,磁盘文件不保存。
!FileIniFlush(strIniFilename)
函数意义:!FileIniWriteFlush(strIniFilename) 函数将内存中的ini文件更新到磁盘上,
与!FileIniWriteFlush(strIniFilename,strSection,strItem,objResult) 函数 配合使用
返 回 值:开关型。成功返回0,否则返回1。 参 数:strIniFilename,字符型,配置文件的文件名; 实 例:!FileIniFlush(\。
实例说明:将内存中数据对象result的值更新到磁盘配置文件a.ini中的system节中
memory项中,并显示磁盘文件。
!FileMove(strSource,strTarget)
函数意义:将文件strSource移动并改名为strTarget。 返 回 值:开关型;
返回0:操作失败; 返回非0值:操作成功。
参 数:strSource,字符型,源文件;
strTarget,字符型,目标文件。
实 例:!Filemove(\。
实例说明:将D盘下文件a.txt移至同一目录下,并改名为b.txt。 注 意:如果目标文件已存在,直接返回0,操作失败。
!FileReadFields(strFilename,lPosition,任意个数变量)
函数意义:从strFilename指定的文件中读出CSV(逗号分隔变量)记录。 返 回 值:开关型。
参 数:strFilename,字符型,文件名;
lPosition,数值型,数据开始位置;
实 例:!FileReadFields(\。
实例说明:从文件a.csv中的第200个字节开始,读取4个数据,分别存入变量:
var1,var2,var3,var4中。
!FileReadStr(strFilename,lPosition,lLength,objResult)
函数意义:从strFilename指定文件(需为.dat文件)中的lPosition,位置开始,读取lLength
个字节,或一整行,并将结果保存到objResult数据对象中。
返 回 值:开关型。
参 数:strFilename,字符型,文件名;
lPosition,开关型,数据开始位置;
lLength,开关型,要读取数据的字节数,若小于或等于0,则读取整行; objResult,字符型,用于存放结果的数据对象。
实 例:!FileReadStr(\。
实例说明:从D盘下文件a.dat中的第100个字节开始,读取20个字节的数据,结果存
入变量abc中。
!FileSplit(strSourceFile,strTargetFile,FileSize)
函数意义:此函数用于把一个文件切开为几个文件。 返 回 值:开关型。
参 数:strSourceFile,字符型,准备切开的文件名;
strTargetFile,字符型,切开后的文件名;
FileSize,数值型,切开的文件的最大大小,单位是MB。
实 例:!FileSplit(\。
实例说明:此时函数将把文件d:\\1.txt切开为大小是1MB的文件,并存放在组态软件work
下,名称分别为spl000.spl,spl001.spl,spl002.spl等等。
!FileWriteFields(strFilename,lPosition,任意个数变量)
函数意义:向strFilename指定的文件中写入CSV(逗号分隔变量)记录。 返 回 值:开关型。
参 数:strFilename,字符型,文件名;
lPosition,开关型,数据开始位置;
= 0,表示在文件开头; <>0,表示在文件结尾;
实 例:!FileWriteFields (\。
实例说明:向D盘文件a.csv的文件结尾,写入4个数据,分别为变量:var1,var2,var3,var4
的值。
注 意:在文件开头写入数据时,将覆盖原有内容;在文件结尾写入数据时,将在原
有基础上添加,并不覆盖原来的内容。
!FileWriteStr(strFilename,lPosition,str,Rn)
函数意义:向指定文件strFilename中的IPosition位置开始,写入一个字符串,或一整
行。
返 回 值:开关型。
参 数:strFilename,字符型,文件名;
lPosition,开关型,数据开始位置;
= 0,表示在文件开头;