Opening a file that contains a user defined word

2 次查看(过去 30 天)
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)

采纳的回答

Chenchal
Chenchal 2017-11-3
% 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>

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by