簡體   English   中英

GDAL 版本 3 及更高版本不適用於 Mapinfo 和小數字段

[英]GDAL version 3 and higher does not work with Mapinfo and Decimal Fields

我在嘗試將 MapInfo 文件從 MID/MIF 格式轉換為 TAB 格式時遇到問題。 此問題發生在 GDAL 3.0.4 及更高版本中。 在 2.1.2 版中,一切正常。

我使用以下命令

ogr2ogr -f "MapInfo 文件" "test.tab" "test.mif"

錯誤如下

錯誤 1:無法將 1234.1 格式化為 20.16 字段 錯誤 3:無法在 test.tab 中寫入要素 ID 1 的屬性 錯誤 1:無法從層測試寫入要素 1。 錯誤 1:層測試翻譯失敗后過早終止翻譯(使用 -skipfailures 跳過錯誤)

這里以 MapInfo 文件 MID/MIF 格式為例

測試.mif

測試.mid

誰能解釋這個錯誤的原因是什么?

我正在嘗試使用 GDAL 3.5 版,但仍然出現此錯誤。

如果我將列類型更改為 Float,則一切正常。

但我不能只改變現有文件的格式

您的值“1234.1”太大了。

從文檔中:

小數字段存儲單精度和雙精度浮點值。 寬度是分配給字段的字符總數,包括小數點。 精度控制數據的精度,是小數點右邊的位數。

您的十進制定義“Decimal (20,16)”只為 integer 部分保留了 3 位數字。 嘗試較小的值,即:999.4 或將小數格式更改為小數 (20,15)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM