PB 存取文件函数

FileClose()
功能关闭先前用FileOpen()函数打开的文件。
语法FileClose ( fileno )
参数fileno:integer,指定要关闭文件的文件句柄,该句柄使用FileOpen()函数打开文件时得到返回值Integer。
函数执行成功时返回1,发生错误时返回-1。如果fileno参数的值为NULL,那么FileClose()函数返回NULL。

FileDelete()
功能删除指定的文件。
语法FileDelete ( filename )
参数filename:string类型,指定要删除文件的文件名,其中可以包含路径返回值Boolean。
函数执行成功时返回TRUE,发生错误时返回FALSE。如果filename参数的值为NULL,那么FileDelete()函数返回NULL。

FileExists()
功能检查指定的文件是否存在。
语法FileExists ( filename )
参数filename:string类型,指定要检查存在性的文件的文件名,其中可以包含路径返回值Boolean。
如果指定文件存在时返回TRUE,不存在时返回FALSE。
如果filename参数的值为NULL,那么FileExists()函数返回NULL。
用法如果filename参数指定的文件被另一个应用加锁锁住,那么FileExists()函数也将返回FALSE。

FileLength()
功能得到指定文件的长度(以字节为单位)。
语法FileLength ( filename )
参数filename:string类型,指定要得到其长度的文件的文件名,其中可以包含路径返回值Long。
函数执行成功时返回指定文件的长度(以字节为单位)。
如果指定的文件不存在,函数返回-1。
如果filename参数的值为NULL,那么FileLength()函数返回NULL。


FileOpen()
功能以指定的读写方式打开指定的文件,同时返回该文件的句柄。
语法FileOpen(filename{,filemode{,fileaccess{,filelock{,writemode,{creator,filetype}}}}})
filename:string类型,指定要打开文件的名称,其中可以包含路径 
filemode:FileMode枚举类型,可选项,指定文件打开方式。有效取值为:
?LineMode! - 缺省值,行模式;
?StreamMode! - 流模式
fileaccess:FileAccess枚举类型,可选项,指定文件访问方式。有效取值为:
?Read! - 缺省值,只读方式,这样打开的文件只能进行读操作;
?Write! - 只写方式,这样打开的文件只能进行写操作?
filelock:FileLock枚举类型,可选项,指定文件加锁方式。有效取值为:
n LockReadWrite! - 缺省值,只有打开该文件的用户能够访问该文件,其它用 户对该文件的访问均被拒绝;
n LockRead! - 只有打开该文件的用户能够读该文件,但其它任何用户均可写该文件;
n LockWrite! - 只有打开该文件的用户能够写该文件,但其它任何用户均可读该文件;
n Shared! - 所有用户均可读写该文件
writemode:WriteMode枚举类型,可选项,当fileaccess参数指定为Write!时,该参数指定在指定文件已经存在时数据的添加方式。有效取值为:
?Append! - 缺省值,将数据添加到原文件尾部;
?Replace! - 覆盖原有数据
creator:可选项,用于Macintosh机,使用四个字符的字符串指定文件的创建者。指定该参数后,必须同时指定
filetype参数filetype:可选项,用于Macintosh机,使用四个字符的字符串指定文件类型返回值Integer。
函数执行成功时返回打开文件的句柄,随后的文件操作函数利用该句柄完成对文件的操作。发生错误时函数返回-1。如果任何参数的值为NULL,那么FileOpen()函数返回NULL。
用法当文件以行模式打开时,每执行一次FileRead()函数读取一行数据;每执行一次FileWrite()函数,该函数自动在写出的字符串末尾增加一个回车(CR)换行(LF)符(这是应用程序在Windows 系统中运行时的情况,在UNIX下只加一个换行字符)。
当文件以流模式打开时,执行一次FileRead()函数读取32,765个字节的数据,如果余下数据没有这么多,那么FileRead()函数就读取所有余下的数据;执行一次FileWrite()函数时,最多可写入32,765个字节的数据,并且不添加回车换行字符。
当文件以写方式使用FileOpen()函数打开时,如果指定的文件不存在,那么FileOpen()函数创建该文件。

FileRead()
功能从指定文件中读取数据。
语法FileRead ( fileno, variable )
参数fileno:integer类型,指定文件句柄(由FileOpen()函数得到)
variable:string或blob类型的变量,用于保存读取的数据返回值Integer。
函数执行成功时返回读取的字符数或字节数;
如果在读取任何字符前读到了文件结束符(EOF),则FileRead()函数返回-100;
当指定文件以行模式打开时,如果在读取任何字符之前遇到了回车(CR)或换行(LF)字符,则FileRead()函数返回0。
如果发生其它错误,FileRead()函数返回-1。
如果任何参数的值为NULL,那么FileRead()函数返回NULL。
用法当指定文件以行模式(Line Mode)打开时,FileRead()函数一次读取一行数据,并把它保存到参数variable中,然后跳过行结束符(回车换行符,操作系统不同,使用的字符也不同),把文件指针移动到下一行的起始位置。当文件以流模式(Stream Mode)打开时,FileRead()函数或一直读取到文件结尾,或读取32,765字节的数据,决定于两者哪个数据长度更短些。

FileSeek()
功能将文件指针移动到指定位置。读写文件时相应函数会自动移动文件指针。
语法FileSeek ( fileno, position, origin )
参数fileno:integer类型,指定文件句柄(由FileOpen()函数得到)
position:long类型,指定相对于origin参数指定位置的新位置偏移量,以字节为单位
origin:SeekType枚举类型,指定从哪里开始移动文件指针,即指针移动的基准。有效取值为:
?FromBeginning! - 缺省值,从文件开头移动指针;
?FromCurrent! - 从当前位置移动文件指针;
?FromEnd! - 从文件结尾处移动文件指针返回值Long。
函数执行成功时返回指针移动后的指针位置。如果任何参数的值为NULL,那么FileSeek()函数返回NULL。

FileWrite()
功能向指定文件中写数据。
语法FileWrite (fileno , variable )
参数fileno:integer类型,指定文件句柄(由FileOpen()函数得到)
variable:string或blob类型,其值将写入fileno参数指定的文件返回值Integer。
函数执行成功时返回写入文件的字符或字节数,发生错误时返回-1。
如果任何参数的值为NULL,那么FileWrite()函数返回NULL。
用法FileWrite()函数从当前文件指针开始写入指定数据,写入之后,将文件指针调整到刚刚写入数据的下一个字节位置。
当文件以writemode参数设置为Replace!方式打开时,文件指针最初位于文件的开头位置;
当文件以writemode参数设置为Append!方式打开时,文件指针最初位于文件的结尾位置。
当文件以行模式打开时,执行FileWrite()函数时,该函数自动在每次写入数据的后面加上回车换行符,并把文件指针移动到回车换行符后面。
当文件以流模式打开时,FileWrite()函数一次最多写入32,765个字节。如果variable参数中数据的长度超过了32,765个字节,那么FileWrite()函数只向文件中写入前32,765个字符并返回32,765。

GetFileOpenName()
功能显示打开文件对话框,让用户选择要打开的文件。
语法GetFileOpenName(title,pathname,filename{,extension{,filter}})
参数title:string类型,指定对话框的标题
pathname:string类型变量,用于保存该对话框返回的文件路径及文件名
filename:string类型变量,用于保存该对话框返回的文件名
extension:string类型,可选项,使用1到3个字符指定缺省的扩展文件名
filter:string类型,可选项,其值为文件名掩码,指定显示在该对话框的列表框中供用户选择的文件名满足的条件(比如*.*,*.TXT,*.EXE等)返回值Integer。
函数执行成功时返回1;
当用户单击了对话框上的“Cancel”按钮时函数返回0;
发生错误时返回-1。
如果任何参数的值为NULL,那么GetFileOpenName()函数返回NULL。
用法filter参数的格式为:description,*. ext缺省值为:"All Files (*.*),*.*"其中,description说明扩展名的意义,比如“所有文件”、“文本文件”等。你可以根据需要指定在打开文件对话框中显示的文件名类型。当需要指定多种文件类型时,各类型之间使用逗号分隔,例如:"PIF 文件, *.PIF, 批处理文件, *.BAT"需要注意的是,该函数只是得到一个文件名,而并没有打开文件,需要打开文件时,依然需要使用FileOpen()函数。

GetFileSaveName()
功能显示保存文件对话框,让用户选择要保存到的文件。
语法GetFileSaveName(title,pathname,filename{,extension{,filter}})
参数title:string类型,指定对话框的标题
pathname:string类型变量,用于保存该对话框返回的文件路径及文件名
filename:string类型变量,用于保存该对话框返回的文件名
extension:string类型,可选项,使用1到3个字符指定缺省的扩展文件名
filter:string类型,可选项,其值为文件名掩码,指定显示在该对话框的列表框中供用户选择的文件名满足的条件(比如*.*,*.TXT,*.EXE等)返回值Integer。
函数执行成功时返回1;
当用户单击了对话框上的“Cancel”按钮时函数返回0;
发生错误时返回-1。
如果任何参数的值为NULL,那么GetFileSaveName()函数返回NULL。
用法filter参数的格式为:description,*. ext缺省值为:"All Files (*.*),*.*"其中,description说明扩展名的意义,比如“所有文件”、“文本文件”等。你可以根据需要指定在打开文件对话框中显示的文件名类型。当需要指定多种文件类型时,各类型之间使用逗号分隔,例如:"PIF 文件, *.PIF, 批处理文件, *.BAT"需要注意的是,该函数只是得到一个文件名,而并没有打开文件,需要打开文件时,依然需要使用FileOpen()函数。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/caobob/archive/2010/04/09/5466061.aspx

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PB12 外部函数是PowerBuilder开发工具中的一个功能,它允许我们在应用程序中调用外部的DLL(动态链接库)函数或外部的COM(组件对象模型)组件。 在PB12 中使用外部函数时,需要设置相关的字符集。字符集是用来表示字符编码的规则,不同的字符集对应不同的字符编码。在PowerBuilder中,我们可以使用以下几种字符集: 1. ANSI字符集:也称为Windows字符集,用于表示英文字符和部分特殊字符,如标点符号和数字等。当我们调用外部函数时,如果外部函数使用了ANSI字符集,则需要将PB12中的字符集设置为ANSI。 2. Unicode字符集:也称为UTF-16字符集,用于表示世界上大多数语言的字符。当我们调用外部函数时,如果外部函数使用了Unicode字符集,则需要将PB12中的字符集设置为Unicode。 3. OEM字符集:也称为操作系统的字符集,用于表示与操作系统相关的字符编码。在某些情况下,我们需要调用使用OEM字符集的外部函数,这时需要将PB12中的字符集设置为OEM。 为了正确地调用外部函数,我们首先需要确定外部函数使用的字符集,然后根据需要将PB12中的字符集设置为相应的字符编码,以保证数据的正确传递和处理。 总之,PB12 外部函数字符集是用来设置PowerBuilder中调用外部DLL函数或COM组件时所采用的字符编码规则。根据外部函数的字符集,我们可以在PB12中设置相应的字符集,以确保数据的正确传递和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值