Skip to content

16.4.8 READ 和 WRITE 命令 ​

READ 和 WRITE 命令与文本文件进行矩阵输入输出。它们共享以下语法以指定数据如何在输入行之间划分:

/FIELD=_first_ TO _last_ [BY _width_]
[/FORMAT=_format_]

两个命令都需要 FIELD 子命令。它指定数据在文件每一行上所占的列范围,从 first 到 last(含)。最左边的列是第 1 列。列必须是字面数字,而不是表达式。要使用整行(即使可能非常长),指定一个列范围,例如 1 TO 100000。

FORMAT 子命令对于数值矩阵是可选的。对于字符串矩阵的输入和输出,指定 A 格式。除 FORMAT 外,FIELD 上的可选 BY 指定确定每个文本行含义:

  • 既无 BY 也无 FORMAT 时,文本文件中的数字是以空格或逗号分隔的 F 格式。对于 WRITE,PSPP 使用准确表示矩阵中数字所需的精度位数。
  • BY _width_ 将输入区域划分为给定 width 的固定宽度字段。输入区域宽度必须是 width 的整数倍。数字以 F _width_.0 格式读取或写入。
  • FORMAT="_count_ F" 将输入区域划分为每行 count 个等宽字段。输入区域宽度必须是 count 的整数倍。可以用另一种格式类型替代 F。
  • FORMAT=F _w_[._d_] 将输入区域划分为宽度为 w 的固定宽度字段。输入区域宽度必须是 w 的整数倍。可以用另一种格式类型替代 F。READ 命令忽略 d。
  • FORMAT=F 指定格式 F 但不指示字段宽度。可以用另一种格式类型替代 F。WRITE 命令接受这种形式,但除非同时使用 BY 指定字段宽度,否则不起作用。

如果 BY 和 FORMAT 都指定或隐含字段宽度,则它们必须指示相同的字段宽度。

• READ 命令
• WRITE 命令

基于 GNU PSPP 2.0.1 手册与入门教程整理