Convert char to cell
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
António
el 30 de Dic. de 2014
Editada: David Young
el 30 de Dic. de 2014
I want to intruduce data in a table but when i run the program it says that conversion to cell from char is not possible. Did someone knows what is wrong in this code?
ze1.Nome(end+1)=input('Introduza o seu nome: ', 's');
ze1.Aperlido(end+1)=input('Introduza o seu apelido: ','s');
ze1.Categoria(end+1)=input('Introduza a sua categoria(Aluno, Docente ou Feuncionário): ','s');
ze1.Numero(end+1)=input('Introduza o seu numero: ','s');
ze1.Mail(end+1)=input('Introduza o seu e-mail: ','s');
ze1.Telefone(end+1)=input('Introduza o seu nº de telefone: ','s');
Thank you all
0 comentarios
Respuesta aceptada
David Young
el 30 de Dic. de 2014
Editada: David Young
el 30 de Dic. de 2014
Assuming that ze1.Nome is already a cell array, all you need to do is to replace the round brackets used for indexing it with curly brackets. This then assigns the string to the contents of a cell, rather than trying to convert the string to a cell. Like this:
ze1.Nome{end+1} = input('Introduza o seu nome: ', 's');
and the same for the other fields.
You should also consider changing the way you store the data. Instead of having a scalar struct with a cell array stored at each field, you could have a struct array with a string stored at each field. Then the line above would be
ze1(end+1).Nome = input('Introduza o seu nome: ', 's');
which may simplify some later processing. However, there will need to be changes earlier in the program to set the array up consistently with this.
Más respuestas (1)
Azzi Abdelmalek
el 30 de Dic. de 2014
ze1=struct('Nome',[],'Aperlido',[],'Categoria',[],'Numero',[],'Mail',[],'Telefone',[]) ze1.Nome{end+1}=input('Introduza o seu nome: ', 's'); ze1.Aperlido{end+1}=input('Introduza o seu apelido: ','s'); ze1.Categoria{end+1}=input('Introduza a sua categoria(Aluno, Docente ou Feuncionário): ','s'); ze1.Numero{end+1}=input('Introduza o seu numero: ','s'); ze1.Mail{end+1}=input('Introduza o seu e-mail: ','s'); ze1.Telefone{end+1}=input('Introduza o seu nº de telefone: ','s');
0 comentarios
Ver también
Categorías
Más información sobre Data Type Conversion en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!