Valores Unicode y ASCII
MATLAB® almacena todos los caracteres como caracteres Unicode® utilizando la codificación UTF-16, donde cada carácter se representa con un valor de código numérico (Unicode incorpora el conjunto de caracteres de ASCII como los primeros 128 símbolos, por lo que los caracteres ASCII tienen los mismos códigos numéricos en Unicode y en ASCII). Tanto los arreglos de caracteres como los de cadenas utilizan esta codificación. Puede convertir caracteres a sus valores de código numérico utilizando varias funciones de conversión numérica. Puede convertir números a caracteres utilizando la función char
.
Convertir caracteres a valores de código numérico
Puede convertir caracteres a enteros que representen sus valores en el código Unicode. Para convertir un único carácter o un arreglo de caracteres, utilice cualquier de estas funciones:
double
uint16
,uint32
ouint64
Se recomienda utilizar la función double
. Sin embargo, si necesita almacenar los valores numéricos como enteros, utilice enteros sin signo con al menos 16 bits, ya que MATLAB utiliza la codificación UTF-16.
Convierta un vector de caracteres a valores del código Unicode utilizando la función double
.
C = 'MATLAB'
C = 'MATLAB'
unicodeValues = double(C)
unicodeValues = 1×6
77 65 84 76 65 66
No puede convertir caracteres de un arreglo de cadenas directamente a valores del código Unicode. En concreto, la función double
convierte cadenas a los números que representan, al igual que la función str2double
. Si double
no puede convertir una cadena a un número, entonces devuelve un valor NaN
.
str = "MATLAB";
double(str)
ans = NaN
Para convertir caracteres de una cadena, convierta primero la cadena a un vector de caracteres o utilice llaves para extraer los caracteres. Después, convierta los caracteres utilizando una función, como double
.
C = char(str); unicodeValues = double(C)
unicodeValues = 1×6
77 65 84 76 65 66
Convertir valores de código numérico a caracteres
Puede convertir valores Unicode a caracteres utilizando la función char
.
D = [77 65 84 76 65 66]
D = 1×6
77 65 84 76 65 66
C = char(D)
C = 'MATLAB'
Uno de los usos habituales de char
es crear caracteres que no puede escribir y añadirlos a cadenas. Por ejemplo, cree el carácter para el símbolo del grado y añádalo a una cadena. El valor del código Unicode para el símbolo del grado es 176.
deg = char(176)
deg = '°'
myLabel = append("Current temperature is 21",deg,"C")
myLabel = "Current temperature is 21°C"
Para obtener más información sobre Unicode, incluidas aplicaciones entre los caracteres y los valores del código, consulte Unicode.
Consulte también
char
| double
| single
| string
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64