【发布时间】:2016-10-24 14:10:58
【问题描述】:
我使用可用的 matlab dbf 阅读器 here 我注意到有时三位数的整数读错了。
来自 dbf 文件的原始数据:
LAMAX,DTLD,1,599,727Q9,A,STANDARD,1,18,18,0,2359.5
但是查看 Matlab 中的数据,您会发现 599 变为 995。 为什么会这样?
'LAMAX','DTLD',[1],[995],'727Q9','A','STANDARD','1','18','18','0',
[2.3595e+03]
这就是我用matlab代码读取dbf文件的方式
[dbfData, NAMES] = dbfread(path2file);
其中 dbfData 是实际数据,NAMES 是 dbf 文件中的字段名称。
编辑:
dbf 文件是使用INM 创建的
当我使用 OpenOffice 打开 dbf 文件时,标题看起来像这样
METRIC_ID,C,6 ; GRID_ID,C,8I_INDEX,N,3,0 ; J_INDEX,N,3,0 ; ACFT_ID,C,12 ; OP_TYPE,C,1 ; PROF_ID1,C,8 ; PROF_ID2,C,1 ; RWY_ID,C,8 ; TRK_ID1,C,8 ; TRK_ID2,C,1 ;距离,N,9,1
扭曲的整数以不带小数的 3 位数字存储 J_INDEX,N,3,0
【问题讨论】:
-
您如何查看原始数据?整数存储在什么类型的字段中?什么软件创建了 dbf 文件?
-
您在编辑中看到了答案。