How to write all the character continuously

1 view (last 30 days)
Hi guys. I got a question want to ask you guys. Below is my code.
string = uint8(retrieveblock);
export = sprintf('%d',string );
export = bin2dec(export);
char_export = char(export);
display(char_export);
fid = fopen('retrievedText.txt', 'w');
fwrite(fid, char_export);
fclose(fid);
This is within a for loop. my question is why I will just write the last character into the text file. Thanks and appreciate your opinion.
  2 Comments
Jan
Jan on 1 Mar 2013
You can edit the original question to improve the formatting of the code. I've inserted a blank line before and after the code.
Please use meaningful tags. All questions in this forum concern "Matlab".

Sign in to comment.

Accepted Answer

Jan
Jan on 1 Mar 2013
You write all characters to the file, but all former characters are overwritten continuously.
You could open the file for appending instead of overwriting:
fid = fopen('retrievedText.txt', 'a');
But it would be much more efficient to open the file once only before the loop:
fid = fopen('retrievedText.txt', 'w');
for k = 1:1000
...
fwrite(fid, char_export);
end
fclose(fid);
  1 Comment
Willam Willam
Willam Willam on 1 Mar 2013
Edited: Willam Willam on 1 Mar 2013
Thanks ya Simon. The result is what I expected. Thank you very very much

Sign in to comment.

More Answers (0)

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Tags

No tags entered yet.

Products

Community Treasure Hunt

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

Start Hunting!