file()

阅读(655) 标签: file,

本章介绍file()函数的多种用法。

file(fn:cs)

描述:

打开指定文件名的文件。

语法:

file( fn{:cs})

备注:

打开文件名为fn的文件

参数:

fn

加载的文件名,可使用绝对路径或者相对路径。如果使用相对路径,则相对主目录,主目录为集算器选项菜单里配置的主目录,主目录缺省为当前目录(dfx文件打开的目录)

cs

字符集,支持的字符集是jvm自带的字符集。缺省则为操作系统默认值。

选项:

@s

按照指定顺序搜索非绝对路径的文件名,搜索顺序为类路径-寻址路径-主目录,寻址路径为集算器选项菜单里配置的寻址路径,主目录缺省为当前目录。

返回结果为只读文件名称

@t

fn目录下产生临时文件,fn省略时产生在【工具】-【选项】-【环境】中设置的临时目录(临时目录相对于【工具】-【选项】-【环境】中设置的主目录) 或者相对路径下。

@a

用于写的文件在发生共享冲突时会等待

返回值:

文件对象

示例:

file("D:/Area.txt":"UTF-8")

加载位于D:\下的" Area.txt"文件,字符集为UTF-8

file("Area.txt")

加载位于主目录下的" Area.txt"文件

file@s("data/Area.txt")

先搜索类路径,类路径中没有再搜索寻址路径列表,寻址路径中没有最后搜索主目录

file@t("data/Area.txt")

data/下产生临时文件

file([fn i ,…]:cs)

描述:

打开指定文件名的文件组。

语法:

file( [fni,…]:cs)

备注:

打开文件名为fni。。。的文件组

参数:

 

 

加载的文件名,可使用绝对路径或者相对路径。如果使用相对路径,则相对主目录,主目录为集算器选项菜单里配置的主目录,主目录缺省为当前目录(dfx文件打开的目录),可以有多个。

cs

字符集,支持的字符集是jvm自带的字符集。缺省则为操作系统默认值。

返回值:

文件对象

示例:

=file(["D:/tmp2.txt","tmp.txt"]:"UTF-8")

加载位于D:\下的" tmp2.txt ""tmp.txt"文件组,字符集为UTF-8

=file(["tmp2.txt","tmp.txt"]:"UTF-8")

加载位于主目录下tmp2.txt ""tmp.txt"文件组,字符集为UTF-8

file(fn,h)

描述:

通过访问远程组表文件生成集群文件。

语法:

file(fn,h)

备注:

通过节点机序列h访问远程组表文件fn生成集群文件。无选项且h是分机序列时返回远程文件,相当于函数file(fn:z,h)

参数:

fn

组表文件

h

节点机或节点机序列

选项:

@z

根据分机序列的顺序,从h(1)1分区、h(2)2分区、找出名为fn的文件形成分布文件

@w

fn可以不存在,用于产生可写的分布文件,不支持文件组

@n

直接根据文件名读取组表文件,而不是从分区中查找组表文件,并且生成复写文件;同时有@z则生成分布文件

@0

0分区读取组表文件,生成复写文件;同时有@z则生成分布文件

返回值:

集群文件

示例:

 

A

 

1

=file@0("emp1.ctx",["192.168.0.116:8281","192.168.0.129:8281"])

从节点机

"192.168.0.116:8281","192.168.0.129:8281"0分区读取组表文件emp1.ctx,生成复写类型的集群文件

2

=file@z("emp1.ctx",["192.168.0.116:8281","192.168.0.129:8281"])

从节点机

"192.168.0.116:8281"1分区和"192.168.0.129:8281"2分区读取组表文件emp1.ctx,生成分布类型的集群文件

3

=file@n("emp1.ctx",["192.168.0.116:8281","192.168.0.129:8281"])

从节点机

"192.168.0.116:8281""192.168.0.129:8281"的各自主目录中取组表文件emp1.ctx,生成复写类型的集群文件

4

=file@n("D:/file/emp2.ctx", ["192.168.0.116:8281","192.168.0.129:8281"])

在节点机

"192.168.0.116:8281""192.168.0.129:8281"取组表文件D:/file/emp2.ctx,生成复写类型的集群文件

5

=file@zw(“emp2.ctx”,[“192.168.0.131:8281”])

在节点机”192.168.0.131”1区中新建可写的分布组表文件emp2.ctx

file(fn:z,h)

描述:

打开指定远程文件名的文件。

语法:

file(fn:z,h)

备注:

h是分机主进程序列时,在h中某分机的数据区z寻找文件fn,优先用本地,本地找不到则在远程机器上寻找比较闲的分机中的文件,打开的文件只读;h是单值时仅在h上找,远程文件可写;z省略则按主目录找。

参数:

fn

加载的文件名,可使用绝对路径或者相对路径。如果使用相对路径,则相对主目录。IDE中主目录为集算器选项菜单里配置的主目录,主目录缺省为当前目录;服务器中主目录为配置文件raqsoftConfig.xml中的mainPath的值,并且不可为空。

z

数据区名称

h

分机序列

返回值:

文件对象

示例:

file("D:\\Scores.txt","192.168.0.20:9282")

加载位于本机D:\下的文件" Scores.txt",字符集为UTF-8

file("Scores.txt","192.168.0.20:9282")

优先加载本机中位于主目录下的文件" Scores.txt"

file("Scores1.txt":0,”192.168.0.20:9282”)

本机没有Scores1.txt则加载位于分机192.168.0.20:9282的名称为0的数据区的文件"Scores1.txt"