Data blob variable

2 vues (au cours des 30 derniers jours)
Mike
Mike le 13 Sep 2011
My goal is to pass a blob of data out of a function that contains a .mat file. Currently I can get close to the desired behavior with the following snippet.
save('functionspace_data.mat');
fid = fopen('functionspace_data.mat');
blob = fread(fid, inf, '*uint8');
But I need to do a similar thing without the use of files in the middle of the code. The format of the blob does not need to be .mat, but does have to be in a format that when converted to a file can quickly reload my function space.
Thanks in advance, Mike

Réponses (1)

Walter Roberson
Walter Roberson le 13 Sep 2011
Please vote for the suggestion to expose the serialization routines, http://www.mathworks.com/matlabcentral/answers/1325-what-is-missing-from-matlab#answer_2153 here.
The ease of hacking it yourself depends on what kind of data structures you want to be able to use. Objects and handles are the most difficult; plain numeric arrays can be fairly easy.
Some of the bundling and unbundling work for structures can be done by memmapfile(), but I suspect that might be tend to be on the slower side.
  2 commentaires
Mike
Mike le 14 Sep 2011
Based on us asking for this in the "what is missing from matlab" forum. I assume there is not really a clean way of doing this without the use of a intermediate file. Thats unfortunate.
Walter Roberson
Walter Roberson le 14 Sep 2011
Yup. The closest I've seen is that R2011a (I think it was) introduced a method of serializing graphics files for transmission -- but that was part of the MATLAB Coder tool for generating C code such as for embedded systems.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by