2010-03-22 5 views
6

me semble être coincé dans Kafka-terre, avec un java.lang.String que je ne peux pas sembler utiliser dans les fonctions MATLAB®:Matlab: traiter java.lang.String

K>> name 

name = 

Jason 

K>> sprintf('%s', name) 
??? Error using ==> sprintf 
Function is not defined for 'java.lang.String' inputs. 

K>> ['my name is ' name] 
??? Error using ==> horzcat 
The following error occurred converting from char to opaque: 
Error using ==> horzcat 
Undefined function or method 'opaque' for input arguments of type 'char'. 

comment peut Je reçois un java.lang.String pour convertir en un tableau de caractères MATLAB régulier?

Répondre

12

Matlab ne sait pas comment travailler avec quoi que ce soit, mais ses propres structures.

Convertir la chaîne en char:

cName = char(name);

4

jamais l'esprit, j'ai tout compris, vous devez utiliser la méthode char() explicitement:

K>> ['my name is ' char(name)] 

ans = 

my name is Jason 
0

str2mat(name) a fonctionné pour moi.

3

En alternative à l'utilisation de char(), vous pouvez également utiliser les méthodes de chaîne Java. Donc

cName = name.toCharArray()' 

Renvoie une matrice de caractères MATLAB.

Questions connexes