MATLAB基础知识数据类型字符和字符串Unicode和ASCII值
MATLAB 使⽤ UTF-16 编码将所有字符存储为 Unicode 字符,其中每个字符都由数值代码表⽰。(Unicode 纳⼊了 ASCII 字符集作为其前 128 个符号,因此 ASCII 字符在 Unicode 和 ASCII 中具有相同的数值代码。)字符数组和字符串数组都使⽤此编码。您可以使⽤各种数值转换函数将字符转换为其数值代码。您可以使⽤ char 函数将数字转换为字符。
将字符转换为数值代码
您可以将字符转换为表⽰其 Unicode 代码值的整数。要转换单个字符或字符数组,请使⽤以下任⼀函数:
double
uint16、uint32 或 uint64
最佳做法是使⽤ double 函数。但是,如果您需要将数值存储为整数,请使⽤有⾄少 16 位的⽆符号整数,因为 MATLAB 使⽤ UTF-16
编码。
使⽤ double 函数将字符向量转换为 Unicode 代码值。
C ='MATLAB'
C =
'MATLAB'
unicodeValues =double(C)
unicodeValues =1×6
776584766566
unicode码和ascii码区别
您⽆法将字符串数组中的字符直接转换为 Unicode 代码值。特别是,double 函数将字符串转换为它们所表⽰的数字,就像 str2double 函数⼀样。如果 double ⽆法将字符串转换为数字,则它返回 NaN 值。
str ="MATLAB";
double(str)
ans = NaN
要转换字符串中的字符,请先将字符串转换为字符向量,或使⽤花括号提取字符。然后使⽤ double 等函数转换字符。
C =char(str);
unicodeValues =double(C)
unicodeValues =1×6
776584766566
将数值代码转换为字符
您可以使⽤ char 函数将 Unicode 值转换为字符。
D =[776584766566]
D =1×6
776584766566
C =char(D)
C =
'MATLAB'
char 的典型⽤途是创建⽆法键⼊的字符,并将其追加到字符串中。例如,创建表⽰度符号的字符,并将其追加到字符串中。度符号的Unicode 代码值是 176。
deg =char(176)
deg =
'°'
myLabel =append("Current temperature is 21",deg,"C") myLabel =
"Current temperature is 21°C"

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。