MATLAB Answers

0

How can I make a text file that I can edit after each time I run a program?

I want to print to a text file the name, score, and board size of the user once a user has completed a simple game I designed. I can do that task just fine, but I also want to display all of the previous users and their scores and board sizes as well and just add the most recent user to the list. If anyone can help that would be great.
this is what I have so far (there are values for Name, Score, and Size)
if true
fid=fopen('results.txt','w');
fprintf(fid, ['Name' '\t\t' 'Score' '\t' 'Board Size' '\n']);
fprintf(fid, '\n%s\t\t%d\t\t%d\n', Name, Score, Size');
fclose(fid);
end

  0 Comments

Sign in to comment.

2 Answers

Answer by Abdelmoumen Bacetti on 29 Nov 2015
 Accepted Answer

use the permission option 'a' which means append the data at the end of the file you can omit the first line so you don't repeat the header, unless this is what you want
so, assuming you have an old results file, do this to add new result at the end
if true
fid=fopen('results.txt','a');
fprintf(fid, '\n%s\t\t%d\t\t%d\n', Name, Score, Size');
fclose(fid);
end

  0 Comments

Sign in to comment.


Answer by Walter Roberson
on 29 Nov 2015

fid = fopen('TheScoreFile.txt', 'at');
fprintf(fid, 'this line will be appended to the file\n');
fclose(fid)

  0 Comments

Sign in to comment.