試圖做最簡單的事情。以二進制模式(無符號16)在QT中編寫一個數字並在matlab中讀取文件。我使用追加模式,因爲我將在未來將文件添加到文件中但似乎無法做到這一點。在QT中編寫二進制文件並在matlab中讀取
這是QT碼:
QFile f("C:\\temp.dat");
f.open(QIODevice::WriteOnly | QIODevice::Append)
QDataStream out(&f);
out<<quint16(270);
f.close();
這是Matlab代碼:
fid = fopen('C:\\temp.dat');
F_nums = fread(fid,1,'*uint16');
fclose(fid);
似乎很簡單,但它會讀取錯誤的數字...
謝謝!
錯誤地是有點含糊。你用十六進制編輯器看過這個文件嗎?首先確保文件中存儲了正確的值。如果這個工程開始調試你的Matlab代碼。 –
輸出:3585,而不是:270 – BioSP
這沒有什麼幫助,輸出是什麼,誰輸出它?再次檢查文件內容... –