Requirements for load() argument

1 view (last 30 days)
Dear all,
in a moment I'm trying to get in touch MATLAB App Designer. To load the datafile I want to use next steps:
[data,path] = uigetfile({'*.dat';'*.txt';'*.*'});
fullpath= strcat(path,data);
spectrum0 = load('fullpath')
But unfortunately the load() function with the name of full path to the file doesn't work. After inserting the original path to the file all the rest works perfectly. My suggestion of problem is that variety type of 'fullpath' is not suitable for load() function. Could you recommend me any solution? Thank you in advance!

Accepted Answer

Chris on 5 Nov 2022
Edited: Chris on 5 Nov 2022
The variable fullpath is a string already. When you use 'fullpath' in quotes, that's passing the string "fullpath" to load. Remove the quotes to pass the variable to a function. But load() expects a .mat file, or "an ASCII file containing numeric data with same number of columns in each row." If your file is formatted like that, fantastic. Otherwise, you might need something else.
readmatrix() or importdata() will load, e.g., a csv file.
If it's pure text, readlines() might work.
  1 Comment
Walter Roberson
Walter Roberson on 5 Nov 2022
When you use unusual extensions, load() cannot always guess whether the file is binary or text. You sometimes have to use the -ascii option to give it a hint.

Sign in to comment.

More Answers (0)


Find more on Data Import and Analysis in Help Center and File Exchange





Community Treasure Hunt

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

Start Hunting!

Translated by