How to use a variable as an 'importdata' string

14 Ansichten (letzte 30 Tage)
Alex
Alex am 25 Jul. 2017
Kommentiert: Alex am 25 Jul. 2017
The following line works fine.
unformatteddata = importdata('neutral.prf', DELIMITER, HEADERLINES);
When I make a variable with 'neutral.prf' as the string, importdata (the last line) fails to find the file.
prf_name= 'neutral';
prf_ext = '.prf';
prf_string(1,1) = strcat(prf_name, prf_ext);
unformatteddata = importdata(prf_string(1,1), DELIMITER, HEADERLINES);
  1 Kommentar
Alex
Alex am 25 Jul. 2017
I resolved the error by using:
unformatteddata = importdata(prf_string{1}, DELIMITER, HEADERLINES);

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Prasanth Sunkara
Prasanth Sunkara am 25 Jul. 2017
Hi Alex,
The issue is not with the "importdata" function.
The below command which you used to concatenate the two char arrays should throw a Dimension mismatch error.
>> prf_string(1,1) = strcat(prf_name, prf_ext);
I do not see the need to use array indexing here.
Just use,
>> prf_string = strcat(prf_name, prf_ext);
I believe that would solve your issue.
PS: Refer this link on how to work with character arrays & strings.
  1 Kommentar
Alex
Alex am 25 Jul. 2017
This caused the same error, "??? Error using ==> importdata at 136 Unable to open file." I resolved the error by using:
unformatteddata = importdata(prf_string{1}, DELIMITER, HEADERLINES);

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by