[討論] fread 讀取binary問題
最近從2010a換了2012a以後
在讀取binary發現了一個問題
我的資料前面117行是標頭(ASCII),
之後會有10個數字(ASCII)儲存影像的寬有幾條資料(長是固定的)
接著才是二進位的資料(資料格式16 bit正整數 前面4格是其他資訊這裡並不需要
所以讀12格後跳4格)
過去我處理的方式是
%開檔
fp = fopen(filename);
%把標頭讀出來並另存
for i = 1:117
A{i,1}=fgetl(fp);
end
%讀取影像的寬
imagesize = fgets(fp,10);
%讀取二進位資料
temp = fread(fp,[555 imagesize],'ubit12',4);
...
..
.
之前執行都沒有問題,
但是換了2012a之後發現temp讀出來的東西是空的
做了一些嘗試以後發現若不用 fgetl 而直接用fread亂讀
temp是會有東西的
所以不確定是否使用了fgetl 再使用 fread 會出錯
還煩請版眾替我解惑
感激不盡
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.165.170
※ 編輯: venwhah 來自: 140.121.165.170 (05/23 02:38)
※ 編輯: venwhah 來自: 140.121.165.170 (05/23 02:38)
→
05/23 10:56, , 1F
05/23 10:56, 1F
→
05/23 10:58, , 2F
05/23 10:58, 2F