GDAL版本3和更高版本不支持Mapinfo和Decimal字段



我在试图将MapInfo文件从MID/MIF格式转换为TAB格式时遇到了问题。此问题发生在GDAL 3.0.4及更高版本。在2.1.2版本上,一切正常。

我使用以下命令

ogr2ogr "MapInfo文件"test.tab"test.mif">

错误后

ERROR 1: Cannot format 1234.1 as a 20.16字段错误3:在test.tab中写入特性id为1的属性失败错误1:无法从层测试中写入特征1。错误1:翻译失败后过早终止转换层测试(使用-skipfailures跳过错误)

下面是MapInfo文件MID/MIF格式的例子

test.mif

test.mid

谁能解释一下这个错误的原因?

我试图使用GDAL 3.5版本,但仍然得到这个错误。

如果我将列类型更改为Float,那么一切都可以正常工作。

但是我不能改变现有文件的格式

Your value "太大了

来自文档:

Decimal字段存储单精度和双精度浮点值。宽度是分配给字段的字符总数,包括小数点。Precision控制数据的精度,是小数点右边的位数。

您的十进制定义" decimal (20,16)"整数部分只剩下3个数字。尝试较小的值,例如:999.4或将十进制格式更改为decimal (20,15)

最新更新