Why am i getting this error in the following line of code?

7 Ansichten (letzte 30 Tage)
Rizwana
Rizwana am 9 Mär. 2014
Kommentiert: Rizwana am 10 Mär. 2014
disp (' ');
name = input ('Enter a name for the folder (single quotes): '); % input folder's name
mkdir (name);
It was running fine when i tested it... 'Test' by giving this string name
disp (' ');
name = inputdlg ('Enter a name for the folder (single quotes): '); % input folder's name
mkdir (name);
now when i enter a string 'Test' as my folder name in this dialogue box i get error which says...
Error using mkdir
Argument must contain a string.

Akzeptierte Antwort

Mischa Kim
Mischa Kim am 9 Mär. 2014
Rizwana, in this case use
name = inputdlg ('Enter a name for the folder (single quotes): ');
mkdir (name{1});
Note the curly brackets.
  3 Kommentare
Mischa Kim
Mischa Kim am 9 Mär. 2014
As pointed out above and explained by Jan below, inputdlg returns a cell array of strings. The following code snippet shows how to read and output multiple (2) lines of strings:
prompt = {'Input dialog'};
name = 'Input dialog';
numlines = 2;
dlg_ans = inputdlg(prompt, name, numlines);
dlg_ans{1}(1,:)
dlg_ans{1}(2,:)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 9 Mär. 2014
Please read the documentation of inputdlg . There you find the explanation, that a cell is replied. But mkdir requires a string.
You have to pick a certain element out of the cell.
See:
doc inputdlg
doc cell
doc mkdir

Kategorien

Mehr zu File Operations finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by