f.export(A,x:F,…;s)

阅读(658) 标签: 序列, 写入文件,

描述:

将序列/排列/序表写入文件

语法:

f.export(A,x:F,…;s)

备注:

A以文本形式写入文件f。当文件不存在时,自动创建(但不能自动创建路径目录),创建的文件缺省为文本格式。

A是排列或者序表时,x参数不存在则写入所有字段,A中不可输出的字段不能写入文件f,当字段取值为引用记录,则写入记录的主键。

A是序列时,A必须是由相同数据结构的记录组成的序列;x参数不存在则将无字段名的单列文本写入文件f

A中成员为序列/记录/序表将缺省写成json串;当A中存在排号类型的字段时,此字段值以整数形式写入。二进制输出时则使用原数据类型。

 

选项:

@t

将字段信息(标题)作为第一行写入文件

@a

追加写入;追加的内容要与原文件内容结构相同,否则报错;文件已有内容时忽略@t;缺省覆盖原文件。

@b

写成二进制文件,速度更快。忽略@ta;小文件不分段,足够大则重写分段。有s参数时认为As有序,仅在s变化时才分段;追加写时新数据的s值必须是不同的。

@c

不存在参数s时用逗号分隔;存在参数s则用s分隔。

@w

换行符使用windows风格,即用\r\n,缺省操作系统规定, 同时使用@b时,将序列的序列写成结构化数据,第一行作为字段名

@q

导出的文本字段值和标题都带有引号

@o

使用Excel标准转义,串中双个引号表示一个引号,其它字符不转义

参数:

f

文件

A

需要输出的序表/排列/序列,A成员是序列时,则再拼上分隔符写出。

x

需要输出的字段,省略则导出A排列中所有可文本化字段,用#时表示用序号定位

F

结果字段名,省略则使用原字段名

s

对于文本文件为自选分隔符,缺省默认分隔符是tab

示例:

  将排列写入到文本文件中。

 

A

 

1

=demo.query(select * from DEPARTMENT)

 

2

=file(D:\\Department.txt).export(A1)

3

=file(D:\\Department.txt).export@t(A1)

 

使用@t选项,第一行的字段信息作为标题写入

4

=file(D:\\Department2.txt).export(A1;|)

5

=file(D:\\Department2.txt).export(A1;)

6

=file(D:\\Department2.txt).export@a(A1)

接上例,在文件内容后追加A1中的内容

7

=file(D:\\Department3.txt).export@b(A1)

写成二进制文件

8

=file(D:\\Department4.txt).export@t(A1,DEPT:Dept1;"|")

x不省略时,只导出指定字段

9

=file("D:\\dept1.txt").export@ta(A1)

dept1.txt不存在,执行后创建dept1.txt,并且导出第一行为标题

10

[a,s,d,f]

 

11

=file("D:\\myfile.txt").export(A10)

myfile.txt为无字段名单列文件

12

=file("D:\\Department6.txt").export@c(A1)

13

=demo.query("select * from EMPLOYEE order by GENDER")

GENDER排序

14

=file("D:\\EMPLOYEE.btx ").export@b(A12,EID,NAME,SURNAME,GENDER,SALARY;GENDER)

A13的返回结果导出EMPLOYEE. btx文件中,默认为A13GENDER有序

15

=file("D:\\EMPLOYEE.txt").export@w(A1)

换行符使用windows风格,即用\r\n

16

=demo.query("select * from DEPARTMENT").keys(MANAGER)

 

17

=A13.switch(DEPT,A15:DEPT)

18

=file("D:\\EMPLOYEE1.txt").export@t(A17)

A17DEPT为引用记录则导出记录的主键

19

=demo.query("select * from DEPARTMENT")

20

=file("D:\\Department7.txt").export(A19,#1)

#1表示第一列,所以只导出了第一列的数据

21

=file("D:\\Dep1.txt").export@q(A19,#1)

22

f1,f2,f3

2,"dd""ff",3

 

23

=A22.import@coq()

24

=file("D://t5.txt").export@coq(A23)

使用@o选项,串中两个引号表示一个引号,写出的t5.txt内容如下:

注意:

txt文件的格式:记录间用回车符隔开,字段间用自选分隔符隔开,缺省为tab键隔开

相关概念:

f.import()