Azzera filtri
Azzera filtri

Opening a file that contains a user defined word

1 visualizzazione (ultimi 30 giorni)
I have a code that asks the user to input 4 numbers. I then need to open the txt file that contains these numbers. The txt file's name is: 'PlotValues(then the user defined numbers).txt. The code correctly gets the user defined numbers (called Numbers below), it is from then where it breaks:-
Numbers = answer
FileName = 'PlotValues'Numbers'.txt';
file_id = fopen(FileName);
data = textscan(file_id,'%f %f','HeaderLines', 1);
fclose(file_id);
x = data{1};
y = data{2};
plot(x,y)

Risposta accettata

Chenchal
Chenchal il 3 Nov 2017
% code
% Issue may be with how you are using Numbers
% assumption: Numbers is a vector
% convert Numbers to row vector and do a num2str before concat
fileBase = 'PlotValues';
fileExt = '.txt';
Numbers = [1;2;3;4]; % or [1 2 3 4]
FileName = [fileBase num2str(Numbers(:)','%d') fileExt];
% Check if filename matches the file on disk
% see for textscan
<https://www.mathworks.com/help/matlab/ref/textscan.html textscan>
  1 Commento
D F
D F il 6 Nov 2017
Brilliant! Thanks for the help, Numbers was a cell array so cell2mat has worked

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by