簡體   English   中英

MATLAB讀取混合數據類型的二進制文件

[英]MATLAB reading a mixed data type binary file

我無法讀取非常大的二進制文件(1,000,000字節以上)

如果我fread在例如1個字節的數據格式文件'uint8'讀取數據的數量等於該文件的大小,所以內存是不是一個問題。

我知道在此二進制文件中有'int16''single'類型'int16'數據,但是我不知道文件的結構。 我認為文件是結構化的,因此有一個'int16'數據點,后跟一個'single'數據點,並且重復進行直到文件結束。

我不知道如何讀取混合數據類型。

我想我需要某種循環嗎?

在此先感謝您提供的任何幫助或建議

使用skip屬性可以single步讀取singleuint16

A = fread(fileID,sizeA,precision,skip)

未經測試的示例代碼:

Integer16 = fread(fileID,sizeA,'uint16',8); %read uin16 and skip the siz eof a single
fseek(fileID, 2, 0) % offset the size of a uint16 
Single = fread(fileID,sizeA,'single',2); % read the singles

暫無
暫無

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

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