how to convert to binart file

1 visualizzazione (ultimi 30 giorni)
sandy
sandy il 8 Apr 2014
given below is the values which i need to process.for that i need to save this as binary format. also i need to save as .tim format only..or any suggestions ..plz
7.543390 7.440341 35.278316 22.194822 978.857422 3.522650
7.543390 7.488090 35.278316 22.210081 978.857422 3.523718
7.527206 7.488090 35.293575 22.194822 978.857422 3.521430
7.527206 7.488090 35.293575 22.210081 978.857422 3.522803
7.527206 7.488090 35.293575 22.194822 978.857422 3.524024
7.527206 7.488090 35.293575 22.194822 978.875732 3.520972
7.527206 7.488090 35.293575 22.194822 978.857422 3.522955
7.527206 7.509514 35.293575 22.194822 978.875732 3.523566
7.532593 7.509514 35.293575 22.194822 978.875732 3.521430
7.532593 7.509514 35.293575 22.179564 978.875732 3.523261
7.532593 7.509514 35.293575 22.194822 978.875732 3.523871
output will be like this..
>Wi@hFy@éoBVåAÇpD–v@ @•z@@•z@@•z@@•z@@•z@@•z@

Risposte (1)

Walter Roberson
Walter Roberson il 8 Apr 2014
fid = fopen('YourFileNameHere', 'w');
fwrite(fid, YourMatrix, 'float32');
fclose(fid);
Note: you might need to pass transpose(YourMatrix)
I did not research .tim format; the file output format might be more complex than this.
dec2bin is not appropriate for this task.
  2 Commenti
sandy
sandy il 9 Apr 2014
Modificato: sandy il 9 Apr 2014
thanks..but if i use float32..it showing error....below is my code...
path_02='C:\Users\Desktop\sample';
path_01='C:\Users\Desktop\sample\output';
a = dir(fullfile(path_02, '*.tim'));
for i = 1:numel(a)
filename_in = fullfile(path_02, a(i).name);
fid = fopen(filename_in,'r');
ascii = fread(fid, [42,21000], 'float32');
data_values=ascii';
out = fopen(fullfile(path_01, a(i).name),'w');
fwrite(out, data_values,'float32');
fclose(out);
fclose(fid);
end
this is error im getting...
Error using fwrite
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in my_sample (line 14)
fwrite(out, data_values);
Walter Roberson
Walter Roberson il 9 Apr 2014
your fopen() is failing when you want to fwrite(). You should be checking the output file identifier ("out" in your code), and you should consider printing out the reason code
[out, msg] = foen(fullfile(path_01, a(i).name),'w');
if out < 0
fprintf(2, 'Open to write failed because: %s\n', msg);
else
....
end

Accedi per commentare.

Categorie

Scopri di più su Large Files and Big Data in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by