2016-10-21 32 views
1

我使用的matlab dbf讀取器可用 我注意到有時三位數的整數被讀錯了。爲什麼Matlab dbf-reader讀取某些整數錯誤?

從DBF文件原始數據:

LAMAX,DTLD,1,599,727Q9,A,標準,1,18,18,0,2359.5

但看在Matlab中的數據您看到變爲。 這是爲什麼?

'LAMAX', 'DTLD',[1],[995], '727Q9', 'A', '標準', '1', '18', '18', '0' ,
[2.3595e + 03]

我這是怎麼讀與MATLAB代碼DBF文件

[dbfData, NAMES] = dbfread(path2file); 

其中dbfData是實際的數據和名稱在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

+0

你如何查看原始數據?什麼類型的字段是存儲在整數?什麼軟件創建了dbf文件? –

+0

你可以在編輯中看到答案。 – Meatball

回答

2

你用過STR2DOUBLE2CELL的更新版本?

從上面的鏈接:

STR2DOUBLE2CELL子功能有時會工作,如果不正確的輸入參數位數是不同

+0

那麼,工作:-) – Meatball