0
所以我試圖使用一些數據文件,其中包含一個文本標頭後跟二進制數據,16位有符號整數與最低有效字節第一。MatLab中的二進制數據
我似乎無法正確打開二進制數據。文本標題的長度可變。 我試過以下,但我的問題是數據實際上不是以二進制存儲的,但已經是一個數字,但不正確。 標題的長度是可變的,所以我無法告訴它在沒有首先打開文件的情況下閱讀很多字符。
fileName = 'PATH/TO/FILE/FILE_NAME.DAT';
dataFile = fopen(fileName);
header = '';
i = 1;
%dataContents = fileread(fileName);
dataContents = fread(dataFile);
while i < 115
char = dataContents(i);
header = [header char];
if char == '}'
break
end
i = i + 1;
end
header = header(2:end-1);
headerSplit = strsplit(header,',');
fileSize = str2double(headerSplit(17));
binaryData = dataContents(i:end);
data = [];
j = 1;
num = binaryData(1:50)
while j < fileSize
data = [data, bin2dec(num2str(binaryData(j:j+1)))];
j = j + 2;
end
length(data)
任何幫助將是偉大的。我是matlab新手,所以我可能會錯過簡單的東西。
通過您指定精度decimal精度? –
謝謝,這完美解決! –