✍️ 田冬冬 • 📅 2025-05-23

# -f 选项

-f 选项用于显式指定当前输入或输出数据中每一列的数据类型。其基本语法为：

> -f[i|o]colinfo

默认情况下，该选项对输入输出同时有效，-fi 表明该选项仅对输入数据有效， -fo 表明该选项仅对输出数据有效。

colinfo 是一系列用逗号分隔的字符串。每个字符串包含两个部分：列号和 数据类型，其指定了输入/输出数据中每一列的含义。

列号是一个从零开始起算的整数（比如第6列的列号为5）；当多个连续的列有相同的 数据类型时，也可以指定一个列号的范围。列号范围的格式为 start[:inc]:stop， 若未给定 inc 则默认为 1。比如 0:2:5 表示第1、3、5列数据；1:5 表示第2至6列数据。

数据类型可以取 ：

- x 表示这一列是经度

- y 表示这一列是纬度

- f 表示这一列是一般的浮点数

- T 表示这一列是绝对时间

- t 表示这一列是相对时间（相对时间由 TIME_UNIT 和 TIME_EPOCH 控制）

- p[unit] 表示这一列是投影后坐标 [默认单位为 m]，在读入数据时投影后坐标值会 自动转换为经纬度值

对于两种常见的数据类型，GMT提供了缩写形式：

- -f[i|o]g 等效于 -f[i|o]0x,1y， 表明输入/输出是地理坐标。如果都是地理坐标可以简单写成 -fg 。

- -f[i|o]c 等效于 -f[i|o]0:1f， 表明输入/输出是笛卡尔坐标。如果都是笛卡尔坐标可以简单写成 -fc 。

例如，-fi0y,1x,3:4T 表明输入数据中第一列是纬度，第二列是经度，第4、5列是 绝对时间，其他列数据则假定是默认的浮点数类型。