Problem save

6 次查看(过去 30 天)
Jose Luis
Jose Luis 2011-2-24
Hello, I have a very simple question. I want to save a variable of the workspace as an ascii file. I make the following request ("a" is a int16 variable):
save a.txt a -ascii
but I get the following message
Warning: Attempt to write an unsupported data type to an ASCII file. Variable 'seriesb' not written to file.
The variables stocked as int16 are not supported by the "save" command? I want to save my variables as int16 and not double ( because I don't want waste too much space), or the same I want just numbers without digits... what should I do?
thank you very much for your help

采纳的回答

Jan
Jan 2011-2-24
If you do not want to waste too much space (what does the GB diskspace cost at the moment?), save your data in binary format, not in -ASCII. Then an int16 needs 2 bytes. As ASCII the int16 -32768 needs 6 bytes plus a delimiter!
What are numbers without digits? Do you mean integers?
Perhaps it is better to use DLMWRITE or FPRINTF to write your files. Then you have more control over the format.

更多回答(1 个)

Matt Tearle
Matt Tearle 2011-2-24
If you want ascii, why not just write out using fprintf?
fid = fopen('a.txt','wt');
fprintf(fid,'%hd\n',a);
fclose(fid);
  6 个评论
Jan
Jan 2011-2-24
@Matt: ? I meant, that Jose would benefit from reading the Getting Started chapters.
Matt Tearle
Matt Tearle 2011-2-24
Gah, we need threaded comments! That was in reply to "What is the %hd format?"

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by