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

6 visualizaciones (últimos 30 días)
Rizwana
Rizwana el 9 de Mzo. de 2014
Comentada: Rizwana el 10 de Mzo. de 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.

Respuesta aceptada

Mischa Kim
Mischa Kim el 9 de Mzo. de 2014
Rizwana, in this case use
name = inputdlg ('Enter a name for the folder (single quotes): ');
mkdir (name{1});
Note the curly brackets.
  3 comentarios
Mischa Kim
Mischa Kim el 9 de Mzo. de 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,:)

Iniciar sesión para comentar.

Más respuestas (1)

Jan
Jan el 9 de Mzo. de 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

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by