9.13. 固定宽度文本转换器¶
固定宽度文本转换器处理遵循固定格式的文本文件。若要使用固定宽度转换器,请指定 type = "fixed-width"
在您的转换器定义中。
9.13.1. 配置¶
fields
在支持两个附加属性固定宽度转换器中, start
和 width
。它们定义了每个字段相对于整个记录的偏移量和长度。
9.13.2. 变换函数¶
这个 transform
元素支持通过引用固定宽子字符串 $0
。每列最初都是一个字符串,因此可能需要进一步转换才能创建正确的类型。看见 变换函数概述 以获取可用功能。
9.13.3. 用法示例¶
假设您有一个 SimpleFeatureType
它由唯一的几何体组成: *geom:Point:srid=4326
。您的输入数据是固定宽度的文件,其中纬度和经度定义为两位数字,后跟一个数字前缀:
14555
16565
下面的Typesafe配置字符串定义了一个适当的转换器,用于获取此数据并将其转换为 SimpleFeatureType
:
geomesa.converters.example = {
type = "fixed-width",
id-field = "uuid()",
options = {
validators = []
}
fields = [
{ name = "lat", start = 1, width = 2, transform = "$0::double" },
{ name = "lon", start = 3, width = 2, transform = "$0::double" },
{ name = "geom", transform = "point($lon, $lat)" }
]
}