9.13. 固定宽度文本转换器

固定宽度文本转换器处理遵循固定格式的文本文件。若要使用固定宽度转换器,请指定 type = "fixed-width" 在您的转换器定义中。

9.13.1. 配置

fields 在支持两个附加属性固定宽度转换器中, startwidth 。它们定义了每个字段相对于整个记录的偏移量和长度。

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)" }
  ]
}